Sì, è possibile, e ce ne sono già alcuni. Come /usr/bin/X
:)
[email protected]:~$ ls {/usr{/local,},}/{s,}bin | grep '[A-Z]'
MAKEDEV
amuFormat.sh
GET
HEAD
Mail
POST
X
X11
Xephyr
Xnest
Xorg
NetworkManager
[email protected]:~$ zcat ~/.cache/apt-file /archive.ubuntu.com_ubuntu_dists_precise_Contents-i386.gz | tail -n +33 | cut -f1 | grep -P '^(usr/)?s?bin/.*[A-Z]' | wc -l
758
Quindi questo è 758 in tutto Ubuntu 12.04. Elenco completo:https://gist.github.com/5264777
Non ci sono restrizioni sui nomi dei comandi su Unix. Qualsiasi file può essere un comando. E un nome file può essere qualsiasi sequenza di uno o più (fino a un limite) di caratteri diversi da ASCII NUL o ASCII /
. zsh
elimina anche questa limitazione per le funzioni in cui puoi avere qualsiasi stringa come nome della funzione.
Alcune note però:
- farai fatica a creare un file di comando chiamato
.
o..
;-). - evita i nomi che sono già presi da comandi standard o incorporati di shell o parole chiave (almeno delle shell più comuni come
bash
,zsh
,tcsh
oksh
). A questo proposito i caratteri maiuscoli possono essere d'aiuto in quanto generalmente non sono usati dai comandi standard. - È meglio limitare ai caratteri ASCII. I caratteri non ASCII non sono espressi allo stesso modo nei vari set di caratteri disponibili
- mentre ci sei, limitati a lettere, cifre, trattino, punto e trattino basso. Qualunque altra cosa, sebbene legale, può causare un problema o un altro con questo o quello strumento (ad esempio,
|
,=
,&
e molti altri avrebbero bisogno di essere sfuggiti nelle shell, se usi:
, il tuo comando non può essere usato come shell di login...). Potresti anche voler escludere.
e-
che non sono consentiti nei nomi delle funzioni in molte shell, nel caso in cui desideri consentire agli utenti di racchiudere il tuo comando in una funzione di shell. - Trasforma il primo carattere in una lettera. Ancora una volta, non è un requisito rigoroso. Ma il carattere di sottolineatura a volte è usato per cose speciali (come in
zsh
le funzioni dei sistemi di completamento iniziano con_
), e i comandi composti da sole cifre possono essere un problema in cose comecmd>output.log
. I file il cui nome inizia con un punto saranno nascosti da cose comels
o shell globbing e molti file manager.
Il comando più famoso è stty
, disponibile anche come STTY
. È stato molto utile riportare il terminale al comportamento normale con STTY SANE
.