Com esbrinar el vostre directori amb el comandament pwd

Un dels comandos més importants que aprendreu quan s'utilitza la línia d'ordres de Linux és l'ordre pwd que representa el directori de treball d'impressió.

Aquesta guia us mostrarà com utilitzar l'ordre pwd i us mostrarà la ruta física al directori on esteu treballant i el directori lògic en el qual esteu treballant.

Com esbrinar quin directori de Linux està actualment

Per esbrinar quin directori actualment teniu executat el següent comandament:

pwd

La sortida de la comanda pwd serà una cosa així:

/ home / gary

A mesura que es mou al voltant del sistema, el directori de treball canviarà per reflectir la vostra posició actual dins del sistema de fitxers.

Per exemple, si utilitzeu l'ordre cd per navegar a la carpeta de documents, l'ordre pwd mostrarà el següent:

/ home / gary / documents

Què mostra pwd quan navegueu a una carpeta enllaçada simbòlicament

Per a aquesta part, configurarem un petit escenari per explicar la situació.

Imagineu que teniu una estructura de carpeta de la següent manera:

Ara imagineu que heu creat un enllaç simbòlic a la carpeta 2 de la manera següent:

ln -s / home / gary / documents / folder1 / home / gary / documents / accounts

L'arbre de carpetes ara tindrà aquest aspecte:

La comanda ls mostra els fitxers i carpetes d'una ubicació concreta:

ls -lt

Si he executat l'ordre anterior a la meva carpeta de documents, voldria veure que per als comptes es mostrarà alguna cosa així:

comptes -> carpeta2

Els enllaços simbòlics bàsicament apunten a una altra ubicació dins del sistema de fitxers.

Ara imagina que ets a la carpeta de documents i has utilitzat l'ordre de cd per passar a la carpeta de comptes.

Què creus que la producció de pwd serà?

Si heu endevinat que mostraríeu / home / gary / documents / accounts llavors seria correcte, però si heu executat l'ordre ls a la carpeta de comptes, us mostrarà els fitxers dins de la carpeta folder2.

Mireu el següent comandament:

pwd -P

Quan executeu l'ordre anterior dins d'una carpeta enllaçada simbòlicament, veureu la ubicació física que, en el nostre cas, és / home / gary / documents / folder2.

Per veure la carpeta lògica podeu utilitzar el següent comandament:

pwd -L

Això, en el meu cas, mostrarà el mateix que pwd per si mateix que és / home / gary / documents / accounts.

Depenent de com es compila i es configura el pwd al vostre sistema, la comanda pwd pot defecte a la ruta física o pot passar per defecte a la ruta lògica.

Per tant, és un bon hàbit usar -P o -L (depenent del comportament que vulgueu veure).

Utilitzant la variable $ PWD

Podeu veure el directori de treball actual mostrant el valor de la variable $ PWD. Simplement feu servir l'ordre següent:

eco $ PWD

Mostra el Directori de treball anterior

Si voleu veure el directori de treball anterior, podeu executar el següent comandament:

eco $ OLDPWD

Això mostrarà el directori que tenia abans de passar al directori actual.

Diverses ocurrències de pwd

Com es va esmentar abans pwd pot comportar-se d'una manera diferent segons la seva configuració.

Un bon exemple d'això és a Kubuntu Linux.

La versió de shell de pwd que s'utilitza quan s'executa pwd mostra el directori de treball lògic quan es troba dins d'una carpeta vinculada simbòlicament.

Tanmateix, si executeu l'ordre següent, veureu que mostra el directori de treball físic quan es troba dins d'una carpeta vinculada simbòlicament.

/ usr / bin / pwd

Això, òbviament, no és gaire útil, ja que bàsicament està executant el mateix ordre, però teniu el resultat invers quan s'executa en un mode predeterminat.

Com es va esmentar anteriorment, probablement voldreu posar en pràctica l'ús de l'script -P i -L.

Resum

Només hi ha dos interruptors addicionals per al comandament pwd:

pwd --version

Això mostra el número de versió actual per pwd.

Quan s'executi contra la versió de shell de pwd, això pot no funcionar, però funcionarà contra el / bin / pwd.

L'altre interruptor és el següent:

pwd --help

Això mostra la pàgina de manual a la finestra del terminal

De nou, això no funciona per a la versió de shell de pwd, només contra la versió / bin / pwd.