Aynı ada sahip başka bir orijinal komutu nasıl çalıştırabilirim?


22

Şununla bir lskomutun diğer adı, ~/.bashrcbununla diğer ad :

alias ls='ls --color=auto'

sonra lsterminal aliased ls( ls --color=auto) komutunu çalıştırdığımda çalışır. Fakat benim sorum şu: nasıl lsve sadece başka bir lstartışma olmadan ve takma ad girişini silmeyle ilgili problemi çözmeden sadece tek başıma nasıl çalıştırabilirim ? çünkü bu girişi silerken basitçe çalıştırabilirim ls.

Yanıtlar:


60

Takma adları aşağıdaki yöntemlerle atlayabilirsiniz:

  1. Komutun tam adı: /bin/ls

  2. komut değiştirme: $(which ls)

  3. yerleşik komut: command ls

  4. çift ​​tırnak işareti: "ls"

  5. tek tırnak işareti: 'ls'

  6. ters eğik çizgi karakteri: \ls


9
bash ek presizyonları: command somethingHer iki atlar takma VE fonksiyonu adında something. \\something, 'something'Ve "something"sadece bypass takma adlı something(bir işlev exist, daha sonra adı verilecek ise). (takma ad, hem varsa hem de hiçbiri atlanmadığında işlevden önce gelir)
Olivier Dulac

9

Takma takma adın genişletilmesini askıya alın

Ayrıca diğer tüm takma adları için takma ad genişletmesini geçici olarak devre dışı bırakabilirsiniz:

$ shopt -u expand_aliases
$ command -v ls
/bin/ls

Onları etkinleştirmek için:

shopt -s expand_aliases
$ command -v ls
alias ls='ls --color=auto'

Diğer ad genişlemesinin komut dosyalarında varsayılan olarak devre dışı bırakıldığını, ancak etkileşimli kabuklarda varsayılan olarak ayarlandığını unutmayın.


9

\Komutun önünü kullanarak bir diğer adını devre dışı bırakabilirsiniz .

Orijinal lskomutu çalıştırmak için onu kullanmanız gerekir.\ls

Örneğin

  • Önce lskomutun diğer adını oluştur.

    [guru@guru-Aspire-5738 /]$ alias ls='ls -l'
    [guru@guru-Aspire-5738 /]$ ls
    total 96
    drwxr-xr-x   2 root root  4096 Sep  3 18:31 bin
    drwxr-xr-x   5 root root  4096 Sep 17 02:51 boot
    drwxr-xr-x   2 root root  4096 Sep  3 22:17 cdrom
    drwxr-xr-x  17 root root  4520 Sep 17 21:11 dev
    drwxr-xr-x 153 root root 12288 Sep 17 21:11 etc
    drwxr-xr-x   3 root root  4096 Sep  3 22:17 home
    lrwxrwxrwx   1 root root    37 Sep  8 21:31 initrd.img -> /boot/initrd.img-3.2.0-68-generic-pae
    lrwxrwxrwx   1 root root    36 Sep  3 22:18 initrd.img.old -> boot/initrd.img-3.2.0-

    (ve daha fazlası...)

  • Orijinalin Çıktı lskullanarak \takma geçersiz hangi.

    [guru@guru-Aspire-5738 /]$ \ls
    bin    etc         lib     opt   sbin     tmp      vmlinuz.old
    boot   home        lost+found  proc  selinux  usr
    cdrom  initrd.img      media       root  srv      var
    dev    initrd.img.old  mnt     run   sys      vmlinuz
    [guru@guru-Aspire-5738 /]$ 

6

commandAliased komutundan önce ekleyebilirsiniz ;

command ls

Veya orijinal yürütülebilir dosyayı birleştirerek çalıştırın. which

which ls

Bu nedenle, "/ bin / ls" döndürür.

'hangisi?'

doğrudan çalıştırabilirsin.


4

Ayrıca komutu /bin/lsyerine orijinal konumundan da çalıştırabilirsiniz .ls

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.