Ano, může a už jich pár je. Například /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
Takže to je 758 v celém Ubuntu 12.04. Úplný seznam:https://gist.github.com/5264777
Názvy příkazů na Unixu nejsou nijak omezeny. Jakýkoli soubor může být příkazem. A název souboru může být libovolná posloupnost jednoho nebo více (i když do limitu) znaků jiných než ASCII NUL nebo ASCII /
. zsh
dokonce ruší toto omezení pro funkce, kde můžete mít jako název funkce libovolný řetězec.
Několik poznámek:
- budete mít problém vytvořit soubor příkazů s názvem
.
nebo..
;-). - vyhněte se názvům, které jsou již převzaty standardními příkazy nebo vestavěnými shelly nebo klíčovými slovy (alespoň nejběžnější shelly jako
bash
,zsh
,tcsh
neboksh
). V tomto ohledu mohou pomoci velká písmena, protože je obvykle standardní příkazy nepoužívají. - Je lepší omezit se na znaky ASCII. Znaky jiné než ASCII nejsou v různých znakových sadách vyjádřeny stejně
- když už jste u toho, omezte se na písmena, číslice, pomlčky, tečky a podtržítka. Cokoli jiného, i když je legální, může způsobit ten či onen problém s tím či oním nástrojem (například
|
,=
,&
a mnoho dalších by muselo být escapováno v shellech, pokud použijete:
, váš příkaz nelze použít jako přihlašovací shell...). Můžete dokonce chtít vyloučit.
a-
které nejsou povoleny v názvech funkcí v mnoha shellech, v případě, že chcete uživatelům umožnit zabalit váš příkaz do funkce shellu. - Z prvního znaku vytvořte písmeno. Opět nejde o striktní požadavek. Ale podtržítko se někdy používá pro speciální věci (jako v
zsh
funkce z dokončovacích systémů začínají_
) a celočíselné příkazy mohou být problémem ve věcech jakocmd>output.log
. Soubory, jejichž název začíná tečkou, budou skryty jakols
nebo shell globbings a mnoho správců souborů.
Nejznámějším příkazem je stty
, který byl k dispozici také jako STTY
. Bylo velmi užitečné nastavit terminál zpět do normálního chování pomocí STTY SANE
.