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:
- casa
- Gary
- documents
- carpeta1
- carpeta2
- documents
- Gary
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:
- casa
- Gary
- documents
- carpeta1
- carpeta2
- comptes
- documents
- Gary
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.