Nasıl bir eğik çizgi eğik dizinleri listelemek için ls olsun?


13

Kabuğum bash. lsSondaki eğik çizgiyle dizinleri gösterme çıktısını nasıl alabilirim ? Ben ne zaman lsiçinde tcshistenilen çıktıyı verir. Bunu bashherhangi bir argüman kullanmadan gerçekleşmesini nasıl sağlayabilirim ?

Örneğin.

bin/
lib/
src/
file1.txt
file2.txt

7
Kabuğunuz burada alakalı değil ... man lssonra aşağıya kaydırın-p
don_crissti

öyle -Fbayrak? Asla kullanmıyorum, bu yüzden hatırlayamıyorum ...
Jeff Schaller

1
Başlığınıza göre sondaki ters eğik çizgi veya örneğinize göre sondaki eğik çizgi (daha mantıklı)?
Gilles 'SO- kötü olmayı bırak'

@don_crissti Soruya ilişkin düzenlememi görün.
CJ7

@ CJ7 - type lsçıktı nedir? Belki bir takma ad?
don_crissti

Yanıtlar:


13

En basit çözüm (yorumlarda @don_crissti tarafından zaten verildiği gibi):

ls -p

Aşağıdakilerle benzer bir etki elde edebilirsiniz:

ls -F

Ancak bu, diğer göstergeleri de ekleyecektir:

Her dosya adına dosya türünü belirten bir karakter ekleyin. Ayrıca, yürütülebilir dosyalar için ekleyin *. Dosya türü göstergeleri /dizinler, @sembolik bağlantılar, |FIFO'lar, =soketler, >kapılar için ve normal dosyalar için hiçbir şey değildir.


Elbette, dizenin komut satırında bir takma adla lsyürütülmesini sağlayabilirsiniz ls -p:

alias ls='ls -p'

Bu geçicidir ve ile silinebilir unalias ls.
Muhtemelen tcshaktif bir takma adınız var.

Komutu ~/.bashrcveya içine koyarak yapabilirsiniz ~/.bash_aliases.


Son parça dikkatimi çekti. Daha önce hiç görmedim ya da duymadım ~/.bash_aliases; sadece ~/.bash_profileve / veya ~.bashrc. Doğru mu?
sesler

1
@ tjt263 Tüm diğer adları bashrc kaynaklı özel bir dosyaya yerleştirmek yaygın bir uygulamadır . İçeriği ihtiyaçlarınıza göre değişebilir .

Renkleri korumak için:alias ls='ls --color=auto -p'
mkczyk 15:19

2

-F kullanabilirsiniz, örn.

$ /bin/ls -F
-/                                 diesel_folks                 grub                     presidents             user_mailer/
0/                                 dmStaffing/                  HJJJH/                   prime_scenarios   
...
# I'm using /bin/ls to make sure I run my system ls 
# (I actually have it aliased to add options automatically normally)
#
# Just read about your no argument requirement
# So you too could alias it, i.e.

alias ls='ls -F'

# Put it in your `.bashrc` or `.bash_aliases` file

tcshBana neden istenen çıktıyı verdiğini biliyor musun bash, değil mi?
CJ7

1
@ CJ7 Çünkü tcsh ve bash farklı yapılandırma dosyaları (farklı sözdizimiyle) kullanıyor. Muhtemelen benzer bir takma adınız var .cshrc.
Gilles 'SO- kötü olmayı bırak'

Giriş .bashrc
dizinimde

@ CJ7, bu değişikliği yaptıktan sonra kabuğunuzu yeniden başlattınız mı?
Jochem Schulenklopper

0

ya

   ls --classify

Veya:

   ls --indicator-style=slash

açıklama

   -F, --classify
          append indicator (one of */=>@|) to entries

   -p, --indicator-style=slash
          append / indicator to directories

Diğer cevaplar az ya da çok bunu kapsıyor, ancak ben daha açıklayıcı ve öğrenilebilir / "ezberlenebilir" / "içselleştirilebilir" oldukları için Yığın Taşması cevaplarında BSD tarzı kısa seçeneklere göre GNU tarzı uzun seçenekleri tercih ediyorum.

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.