Che cosa significa ./ in Linux?

Accedi ed esegui comandi in qualsiasi directory senza uscire dalla directory corrente con './' nel terminale

Per tutti gli appassionati di console ./ può sembrare abbastanza familiare. È una delle tante cose fantastiche di Linux che lo rende facile da usare dal terminale.

Se non sai cosa ./ significa che ti abbiamo coperto. Questo articolo spiegherà in dettaglio cosa fa ./ in Linux significa e cosa fa nel sistema Linux.

Significato di ./ al punto

Il semplice significato di ./ è 'Elenco corrente'. È semplice come questo. Ma aspetta, ha dimensioni più utili e interessanti.

Per tutti gli appassionati di console, i piccoli dettagli in questo ./ simbolo, sono molto importanti e specifici con la gerarchia degli utenti che possono passare inosservate molte volte da un utente Linux alle prime armi.

In qualsiasi momento, quando si utilizza Linux dalla riga di comando, ci si trova da qualche parte nella gerarchia del file system. Quando lavori come utente non root, molto probabilmente ti trovi nella tua home directory.

Indipendentemente da quale sia la tua directory corrente, potresti dover gestire i file che si trovano al di fuori della tua directory corrente. Quindi cambiare la directory di tanto in tanto può essere un lavoro noioso. Per rendere questo più facile, usando ./ può rivelarsi un modo efficace per gestire e modificare più file dalla directory corrente. Non è necessario modificare le directory più volte, il che sarà un metodo produttivo e di risparmio di tempo.

Capire ./ a pezzi

Cerchiamo di capire il significato di ./ in segmenti separati di . (punto) e / (barra).

. (punto):- Nel contesto della domanda di cui stiamo discutendo in questo articolo, il . (punto) significa semplicemente il 'Directory attuale dell'utente‘.

Esempio:

gauravv@ubuntu:~$ ls -al total 179572 drwxr-xr-x 86 gauravv gauravv 266240 Sep 12 09:10 . drwxr-xr-x 4 radice radice 4096 4 set 18:29 .. drwxr-xr-x 2 gauravv gauravv 65536 15 luglio 2018 100CANON 

Nel codice sopra, nella riga evidenziata puoi vedere il punto (.) alla fine. Ciò significa che questa è la mia directory corrente.

/ (barra):- Quando aggiungiamo a / (barra) al .(punto) si assicura semplicemente che non si stia operando su un file. È come aggiungere / a qualsiasi altro nome di directory.

Comprensione ./ con un esempio

Facciamo un esempio e capiamo il ./ con ulteriori chiarimenti.

Supponiamo che tu voglia usare il nano editor di testo (un editor di testo per la console) invece dell'editor di testo grafico. Lavorerai completamente sulla console. Quando inizi a lavorare con l'editor, vieni inserito nel Home Directory per impostazione predefinita.

Ma supponiamo che il documento che desideri modificare sia in un'altra directory. C'è una directory chiamata spazio e qui giace il tuo documento cool.txt. Quindi il percorso di posizione di questo cool.txt il file diventa '/home/gaurav/space/cool.txt‘.

Per aprire questo file in nano, potresti certamente digitare cd[Directory_name_where_file_located] poi nano cool.txt.

Ma per renderlo più efficiente e facile possiamo semplicemente digitare nano ./space/cool.txt.

Guarda gli output di seguito per capire meglio l'esempio.

gaurav@ubuntu:~$ pwd /home/gaurav gaurav@ubuntu:~$

Qui la Home Directory è '/home/gaurav'. E il file da modificare (cool.txt) si trova in "/home/gaurav/spazio‘.

Ma diciamo che non desidero cambiare la mia directory corrente (/home/gaurav) e funziona direttamente dalla mia home directory. Lo farò come segue.

gaurav@ubuntu:~$ nano ./space/cool.txt GNU nano 2.9.3 ./space/cool.txt Modificato Ciao, mi chiamo Tony Stark, sono un supereroe.
gaurav@ubuntu:~$ cat ./space/cool.txt Ciao, mi chiamo Tony Stark, sono un supereroe. gaurav@ubuntu:~$ 

Qui ho modificato il file dalla mia directory home stessa senza cambiare il percorso.

Il vantaggio principale dell'utilizzo ./ è che se non desideri allontanarti dalla cartella corrente, puoi comunque manipolare i file intorno a te.

Se avessi digitato solo nano cool.txt, saresti al comando nano per aprire un file nella directory home (/home/gaurav) restituirebbe un errore in quanto il file non esiste nella directory home. E questo è il motivo per cui usi nano ./space/cool.txt

Esecuzione di programmi con ./

./ può essere utilizzato per eseguire i file eseguibili di un programma. Lo capiremo con un esempio.

Se voglio eseguire un programma C nel mio $PATH (uso echo $PATH comando per ottenere il tuo PERCORSO), compilerò semplicemente il programma C. Alla compilazione, un file eseguibile denominato a.out verrà creato nella directory corrente. Per eseguire questo programma eseguirò il file eseguibile a.out. Per eseguire questo programma C, devo solo digitare ./a.out per eseguire il programma C.

gaurav@ubuntu:~/space$ sudo gcc demo.c [sudo] password per gaurav: gaurav@ubuntu:~/space$ ./a.out gaurav@ubuntu:~/space$ 

In questo contesto, anteponendo il comando con ./ dice effettivamente "dimentica il PERCORSO, voglio che guardi solo nella directory corrente".

Allo stesso modo puoi istruire il sistema a cercare solo in un'altra posizione specifica anteponendo al comando un percorso relativo o assoluto come:

../ significa Directory Genitori o ./work/demo.c il che significa che cerca il file demo.c nella directory denominata opera.

Conclusione

./“ viene utilizzato in un percorso per indicare la directory corrente. Può anche eseguire uno script dalla directory di lavoro corrente. È una pratica per risparmiare tempo usare ./ nel tuo $PATH in quanto ti consente di modificare i file che non sono presenti nella tua directory corrente e anche quello senza nemmeno lasciare la tua directory di lavoro corrente.