GNU/Linux >> Linux Esercitazione >  >> Linux

Cosa fa `. /percorso/comando` Fare? (spazio dopo il punto, percorso assoluto)?

Questa domanda ha già risposte qui :Qual è il significato di un punto prima di un comando nella shell?

(6 risposte)
Chiuso 4 mesi fa.

Da questa guida al completamento di Bash apprendiamo che affinché Bash esegua il completamento automatico è necessario eseguire . /etc/etc/bash_completion.d/foobar (nota lo spazio dopo . ) affinché il completamento di Bash funzioni.

$ /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

È . una scorciatoia per il source comando? Se no, allora che cos'è? È impossibile cercare su Google, man source non restituisce nulla e apropos source e info source dare così tante informazioni irrilevanti che non posso dire se quello che sto cercando è lì dentro. Come potrei anche iniziare a utilizzare RTFM per trovare io stesso la risposta a questa domanda?

Risposta accettata:

. è identico al source funzione.

Come sempre il primo riferimento è il man bash pagina di manuale in cui puoi confermare la tua ipotesi iniziale cercando / source

…funzione shell o script eseguito con . o fonte...

è il primo riferimento, ma un po' più avanti trovi una sezione Comandi incorporati nella shell

. filename [arguments]
source filename [arguments]
Legge ed esegue comandi da nomefile nell'ambiente della shell
corrente e restituisce lo stato di uscita dell'ultimo comando eseguito
da nomefile. Se il nome del file non contiene una barra, i nomi dei file in
PATH vengono utilizzati per trovare la directory contenente il nome del file. Il file
cercato in PATH non deve essere eseguibile. Quando bash non è in modalità posix
, la directory corrente viene cercata se non viene trovato alcun file in PATH.
Se l'opzione sourcepath del comando integrato shopt è disattivata,
il PATH non è cercato. Se vengono forniti argomenti, diventano
i parametri posizionali quando viene eseguito il nomefile. In caso contrario, i parametri posizionali
rimangono invariati. Lo stato restituito è lo stato
dell'ultimo comando terminato all'interno dello script (0 se non vengono eseguiti comandi
) e false se il nome del file non viene trovato o non può essere letto.

Il fatto che sia una funzione incorporata di bash è il motivo per cui la fonte non viene fornita con la propria pagina man, motivo per cui apropos ha fallito.

Correlati:Convinci apt-get *non* a utilizzare il metodo IPv6?
Linux
  1. In che modo Linux gestisce più separatori di percorsi consecutivi (/home////nomeutente///file)?

  2. Su quali sistemi //foo/bar è diverso da /foo/bar?

  3. Linux:cosa significa un punto dopo i bit di autorizzazione del file?

  4. Linux:cosa significa la lettera "u" in /dev/urandom?

  5. cosa significa -zxvf in tar -zxvf <nomefile>?

Che cos'è il comando sorgente in Linux e come funziona?

Percorso assoluto vs relativo in Linux:qual è la differenza?

Cosa fa .cache? Consuma un enorme spazio su disco

Cosa fa source /etc/network/interfaces.d/* nella parte superiore del file /etc/network/interfaces?

I siti web dovrebbero vivere in /var/ o /usr/ in base all'utilizzo consigliato?

Cosa significa NT_STATUS_BAD_NETWORK_NAME in Samba?