I percorsi delle directory in linux

Pubblicato il: 26 maggio, 2009

I percorsi delle directory

Come abbiamo discusso nella sezione relativa al percorso di ricerca, spesso è possibile avviare programmi semplicemente inserendo il loro nome, purché esse si trovino nel suo percorso di ricerca. Si potrebbe anche avviare un programma di riferimento attraverso un percorso relativo, il percorso in relazione alla vostra attuale directory di lavoro. Per capire la sintassi di percorsi relativi, abbiamo bisogno di ritornare un attimo. Come ho già detto, si può fare riferimento a qualsiasi file o una directory, specificando il percorso di questa directory. Perché hanno un significato particolare, non vi è un modo di fare riferimento ad una vostra directory corrente o la sua società madre directory. La directory corrente è referenziato da “.” e la sua società madre da “..” (spesso di cui alla conversazione come “punto” e “dot-dot”).

Poiché le directory sono separati da altri file e directory da una /, un file nella directory corrente di riferimento, come potrebbe essere. / Nome_file e un file nella directory genitore sarebbe come riferimento .. / nome_file. È possibile fare riferimento al genitore( la cartella di sopra) del genitore del file per andarea finire su un altro  .. /, e poi proseguire per la directory principale, se si desidera. Così il file .. / .. / nome_file è in una directory su due livelli da la directory corrente. Questa barra (/) viene indicato come uno slash in avanti, rispetto a un back-slash (\), che è usata in DOS a componenti separati percorso.

Quando la tua interpretazione della riga di comando, la shell interpreta tutto fino all’ultimo / come un nome di directory. Se ci sono stati nella root (più in alto) di directory, si potrebbe accedere data in uno dei diversi modi. I primi due, la data e / bin / data, abbiamo già a conoscenza. Sapendo che. / Si riferisce alla directory corrente significa che si potrebbe anche arrivare a così:. / Bin / data. Si tratta di dire ai nostri relativa directory corrente (./), guardare nella sottodirectory bin data per il comando. Se ci sono stati nella directory / bin, si potrebbe avviare il comando come questo:. / Data. Questo è utile quando il comando che si desidera eseguire è la directory corrente, ma la directory non è nel vostro cammino. (Maggiori informazioni su questo in un momento.)

Siamo inoltre in grado di ottenere gli stessi risultati della directory root avviando il comando come questo: bin / data. Se vi è un. / All’inizio, si sa che tutto è relativo alla directory corrente. Se il comando contiene solo un /, il sistema sa che tutto è relativo alla directory radice. Se nessuna barra è all’inizio, il sistema di ricerca fino a quando non arriva alla fine del comando o incontra una barra che si verifica per primo. Se vi è una barra in questo campo (come nel nostro esempio), si traduce questa sia una sottodirectory della directory corrente. Quindi eseguire il comando bin / data è tradotto lo stesso. / Bin / data.

Passiamo ora dal presupposto che siamo nella nostra home directory, / home / jimmo (per esempio). Possiamo, ovviamente, l’accesso alla data di comando semplicemente come data perché è nel nostro percorso. Tuttavia, per accedere con un percorso relativo, si potrebbe dire .. / .. / bin / data. Il primo .. / sposta verso l’alto di un livello in / home. La seconda .. / sposta su un altro livello di /. Da lì, si guarda nella sotto-directory bin data per il comando. Tieni presente che in tutto questo processo, la nostra directory corrente non cambia. Siamo ancora in / home / jimmo.

Cercare il percorso non è fatto solo per i comandi. Se dovessimo entrare vi nome_file (vi è un editor di testo) e non vi era alcun file chiamato nome_file nella nostra directory corrente, vi sarebbe la modifica di un nuovo file. Se avessimo una sottodirectory chiamata testo dove nome_file è stato, avremmo di accedervi o come vi. / Testo / nome_file o vi text / nome_file. Naturalmente, si potrebbe accedere con il percorso assoluto di vi / home / jimmo / testo / nome_file.

Quando si immette il percorso di voi (o un comando o un file) La shell interpreta ogni componente di un percorso prima di passare al comando appropriato. Questo ti permette di trovare con alcuni percorsi piuttosto convoluted se lo desiderano. Ad esempio:

cd / home / jimmo / dati / .. / bin / .. / .. / mandrino / lettere

Questo esempio potrebbe essere interpretata come prima cambiare la directory in / home / jimmo / dati /, spostando indietro fino alla directory genitore (..), poi in sotto-directory bin, nella madre e la sua società madre (../.. /) e poi nella sottodirectory mandrino / lettere. Anche se questo è un esempio piuttosto manipolata, so che molti pacchetti software che si basano su percorsi relativi e finiscono con riferimenti directory simile a questo esempio.

Cartella corrente Obbiettivo cartella Percorso relativo Percorso assoluto
/data/home/jimmo/letter /data/home/jimmo/letter/dave ./dave or dave /data/home/jimmo/letter/dave
/data/home/jimmo/letter /data/home/jimmo ../ /data/home/jimmo
/data/home/jimmo/letter /data/home/ ../.. /data/home
/data/home/jimmo/letter /tmp ../../../../tmp /tmp

Fonte : http://www.linux-tutorial.info/modules.php?name=MContent&pageid=17

Tag: , ,




WPSN comments