(6 odpovědí)
Uzavřeno před 4 měsíci.
Z tohoto průvodce dokončením Bash se dozvídáme, že aby Bash provedl automatické dokončování, musíte provést . /etc/etc/bash_completion.d/foobar
(všimněte si mezery za .
), aby dokončení Bash fungovalo.
$ /etc/bash_completion.d/ssh
bash: /etc/bash_completion.d/ssh: Permission denied
$ . /etc/bash_completion.d/ssh
$ ls -l /etc/bash_completion.d | grep ssh
-rw-r--r-- 1 root root 297 Jan 28 18:04 ssh
Je .
zkratka pro source
příkaz? Pokud ne, co to je? Není možné vyhledat, man source
nevrací nic a apropos source
a info source
poskytnout tolik irelevantních informací, že nedokážu říct, jestli tam je to, co hledám. Jak bych vůbec mohl začít s RTFM, abych sám našel odpověď na tuto otázku?
Přijatá odpověď:
Ano . je identický se source
funkce.
Jako vždy je prvním odkazem man bash
manuálová stránka, kde můžete potvrdit svůj počáteční odhad vyhledáním / source
…shell funkce nebo skript spuštěný pomocí . nebo zdroj…
je první reference, ale o něco dále najdete sekci Shell Builtin Commands
. filename [arguments]
source filename [arguments]
Čtěte a spouštějte příkazy z názvu souboru v aktuálním prostředí shell
a vraťte stav ukončení posledního provedeného příkazu
z názvu souboru. Pokud název_souboru neobsahuje lomítko, názvy souborů v
PATH se použijí k nalezení adresáře obsahujícího název_souboru. Soubor
hledaný v PATH nemusí být spustitelný. Když bash není v režimu posix
, prohledá se aktuální adresář, pokud není v PATH nalezen žádný soubor.
Pokud je volba sourcepath k vestavěnému příkazu shopt vypnuta,
PATH není hledali. Jsou-li zadány nějaké argumenty, stanou se
pozičními parametry při spuštění souboru. Jinak se
poziční parametry nezmění. Návratový stav je stav
posledního příkazu ukončeného ve skriptu (0, pokud nejsou
provedeny žádné příkazy), a false, pokud název souboru nebyl nalezen nebo jej nelze přečíst.
Skutečnost, že se jedná o vestavěnou funkci bash, je důvodem, proč zdroj nepřichází s vlastní manuálovou stránkou, a proto apropos selhal.
Související:Přesvědčit apt-get *ne* používat metodu IPv6?