Komut satırına göre mevcut mermilerin listesi nasıl bulunur?


20

Kullanılabilir kabukları komut satırı ile kullanmak için nasıl listeleyebilirim?


(IFS=: && grep -rl tcsetpgrp $PATH | xargs grep -rl setrlimit)Debian sisteminde iyi bir yaklaşım var gibi görünüyor.
Stéphane Chazelas

Fedora 20'de geri döner /bin/bash /bin/crash /bin/gdb(ve semboller den başlar /usr/bin).
Cristian Ciupitu

Yanıtlar:


30

Kullanılabilir geçerli oturum açma kabuklarını o sırada kullanmak üzere listelemek için aşağıdaki komutu yazın:

cat /etc/shells

Misal:

pandya@pandya-desktop:~$ cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash
/bin/ksh93

Kabuk hakkında bilgi için wikipedia'yı ziyaret edin .


Bunun tüm sistemler için çalışmayacağını unutmayın. Solaris ve HP-UX'in varsayılan olarak / etc / shell dosyası yoktur.
Warwick

Neden var /bin/trueve /bin/falsebu listedeki?
Bernhard

2
@bernhard - / bin / true ve / bin / false için iyi bir açıklama var link
Warwick

6

Ayrıca kullanabilirsiniz chsh -l Bu kabuk listesini yazdırır.

Misal :-

[anurag@focused ~]$ chsh -l
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin

3
Benim için,chsh: invalid option -- 'l'
Pandya

@Pandya, kullandığınız komutun tamamını sağlayabilir misiniz? Bunu ((...)) veya [...] veya [[...]] gibi diğer kabuk yöntemlerinin veya yapılarının birleşimi ile kullanıyor olabilirsiniz
Anurag Anand



@Pandya man7.org/linux/man-pages/man1/chsh.1.html -l seçeneği sunar. Linux-util man sayfasına gitmek için sayfanın üst kısmındaki bağlantıya tıklamanız yeterli
Anurag Anand

2

En azından OpenBSD ve NetBSD'de:

$ getent shells

(Ubuntu) Linux ve diğer birçok Unice'de (BSD'ler dahil):

$ grep '^[^#]' /etc/shells

Solaris'te dosya /etc/shellsbulunmayabilir. Geçerli mermilerin listesi shells(4)kılavuzda yer almaktadır. Vanilya Solaris 11.3 sistemimde bu, aşağıdaki kabukları listeler:

/bin/bash         /usr/bin/bash     /bin/pfbash   /usr/bin/pfbash
/bin/csh          /usr/bin/csh      /bin/pfcsh    /usr/bin/pfcsh
/bin/jsh          /usr/bin/jsh      /sbin/jsh     /usr/sbin/jsh
/bin/ksh          /usr/bin/ksh      /bin/pfksh    /usr/bin/pfksh
/bin/ksh93        /usr/bin/ksh93    /bin/pfksh93  /usr/bin/pfksh93
/bin/sh           /usr/bin/sh       /bin/pfsh     /usr/bin/pfsh
/bin/tcsh         /usr/bin/tcsh     /bin/pftcsh   /usr/bin/pftcsh
/sbin/sh          /usr/xpg4/bin/sh  /sbin/pfsh    /usr/xp4/bin/pfsh
/bin/zsh          /usr/bin/zsh      /bin/pfzsh    /usr/bin/pfzsh
/usr/sfw/bin/zsh

Kurulumumda /usr/sfw/bin/zshne /usr/xp4/bin/pfshvar ne de var ...

Geçerli Solaris kabuklarının daha kısa bir listesi (kaldırılan her kabuğun kopyaları):

/bin/bash       /bin/ksh        /bin/pfcsh      /bin/pfsh       /bin/sh
/bin/csh        /bin/ksh93      /bin/pfksh      /bin/pftcsh     /bin/tcsh
/bin/jsh        /bin/pfbash     /bin/pfksh93    /bin/pfzsh      /bin/zsh
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.