varsayılan komut seçeneklerini değiştirme


15

Komuta girdiğimde

ls

Geçerli dizinde dosya ve dizinlerin bir listesini görüyorum, görüntülenen liste oldukça can sıkıcı.

Aksine, -1 seçeneği gibi ls komutunu yürütmeyi seviyorum

ls -1

Benim sorum her zaman -1 seçeneği ile çalışacak şekilde ls komutunun varsayılan davranışını değiştirmek için. ls komutu ile bir sütunda dosya ve dizinlerin görüntülenmesi.

Teşekkürler.

Yanıtlar:


14

Bunun bir yolu ~/.bashrcdosyanızda takma ad oluşturmak olabilir :

alias l1='ls -1'

Sonra yazarak l1, ls -1idam edilecek


~ / .Bashrc dosyasını nasıl buldunuz? Computer \ bin'de "bash" uygulamasını buldum, ancak bahsettiğiniz ada sahip bir metin dosyası bulamadım.
AlainD

.Bashrc dosyası, / bin içinde değil, ana dizininizde bulunur. ~ Bash içindeki ana dizininize genişler, böylece yol /home/user/.bashrc
Jishnu

Ben girmek için ana satırdan taşımak zorunda değilim lsl = "ls -l" takma ad kullanın.
dvnkiss

4

Ana dizininizde .bashrc dosyasını düzenleyicide açın ve ls = 'ls -1' diğer adını ekleyin .

İlk önce terminali açın (Basın ControlAltT), gedit ./.bashrc.bashrc dosyanızı düzenleyicide açmak için girin .

Ls için bazı takma adları olan bölümü bulun. Benimkinde (stok 11.10) şöyle görünüyor:

# some more ls aliases
alias ll='ls -alF'
alias la='ls -A'
alias l='ls -CF'

Ls diğer adlarından sonra aşağıdaki satırı ekleyin:

alias ls='ls -1'

Dosyayı kaydedin, gedit ve terminalden çıkın ve yeniden başlatın. Şimdi ls komutu varsayılan olarak ls -1'i çalıştırmalıdır.


1
Bu, bu kullanıcı için varsayılan olarak "ls -1" olarak çalışacak şekilde "ls" değerini yeniden tanımlar. Yeni bir komut kullanmayı tercih ederseniz, @zetah answer bunu kapsar.
James

UBuntu 14.04 LTS'deki Ana dizinimde sadece bir grup klasör görüyorum ve .bashrc dosyası yok.
AlainD

1

zetah'ın cevabı en iyisidir. Detaylandırmak için:

Takma adlar en iyi komut varsayılan parametrelerinde kısa, basit ve sık kullanılan değişiklikler için kullanılır. Daha iyi performans veya tekrarlı kullanım için bellekte (kaynak dosyalarından okunduktan sonra) saklanırlar.

İşlevler, sıklıkla kullanılan ve bellekte depolanan daha karmaşık etkinlikler için uygundur.

Komut dosyaları en karmaşık ve en az kullanılan komutlar için uygundur.

Bu soruya ve unix stackexchange'teki yanıtlara bakın - takma adlar, işlevler ve komut dosyaları arasındaki en iyi kullanım farkını açıklar.


1

Sadece @RobDavenport cevap bir şey netleştirmek için. Aynı ada sahip bir komutu geçersiz kılmak için bir işlevi kullanamazsınız.

örneğin, lskomuta varsayılan bir parametre eklemek için şunları yapabilirsiniz:

alias ls='ls -1 $@'

Bu ls, orijinal komut yerine çağrılacak yeni bir takma ad ekleyecektir . -1Seçeneği ekler ve her parametreyi $@orijinal lskomuta iletir .

Ayrıca yapabilirsin

function ls_column () {
  ls -1 $@
}

Aynı etkiye sahip olurdu, ancak işleviniz için farklı bir ad kullanmalısınız. Aksi takdirde tekrar tekrar kendisini arar.

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.