15 exemples d'ordres pwd (directori de treball d'impressió) a Linux


Per a aquells que treballen amb la línia d'ordres de Linux, l'ordre 'pwd' és molt útil, que indica on sou, en quin directori, començant des de l'arrel (/). Especialment per als novells de Linux, que poden perdre's entre directoris a la interfície de línia d'ordres durant la navegació, l'ordre 'pwd' arriba a rescatar-se.

Què és el pwd?

'pwd' significa 'Imprimeix el directori de treball'. Tal com indica el nom, l'ordre 'pwd' imprimeix el directori de treball actual o simplement l'usuari del directori és, actualment. Imprimeix el nom del directori actual amb el camí complet començant des de l'arrel (/). Aquesta ordre està integrada a l'ordre de l'intèrpret d'ordres i està disponible a la majoria de l'intèrpret d'ordres: bash, Bourne shell, ksh, zsh, etc.

# pwd [OPTION]

Si s'utilitzen les dues opcions '-L' i '-P', l'opció 'L' té prioritat. Si no s'especifica cap opció a l'indicador, pwd evitarà tots els enllaços simbòlics, és a dir, tindrà en compte l'opció -P.

Estat de sortida de l'ordre pwd:

Aquest article pretén oferir-vos una visió profunda de l'ordre de Linux pwd amb exemples pràctics.

1. Imprimiu el vostre directori de treball actual.

[email :~$ /bin/pwd

/home/avi

2. Creeu un enllaç simbòlic d'una carpeta (digueu /var/www/html al vostre directori d'inici com a htm). Mou-te al directori acabat de crear i imprimeix el directori de treball amb enllaços simbòlics i sense enllaços simbòlics.

Creeu un enllaç simbòlic de la carpeta /var/www/html com a htm al vostre directori d'inici i aneu-hi.

[email :~$ ln -s /var/www/html/ htm
[email :~$ cd htm

3. Imprimiu el directori de treball des de l'entorn encara que conté enllaços simbòlics.

[email :~$ /bin/pwd -L

/home/avi/htm

4. Imprimiu el directori físic actual de treball resolent tots els enllaços simbòlics.

[email :~$ /bin/pwd -P

/var/www/html

5. Comproveu si la sortida de l'ordre \pwd i \pwd -P és igual o no, és a dir, si no es dóna cap opció en temps d'execució, sí\pwd té en compte o no l'opció -P automàticament.

[email :~$ /bin/pwd

/var/www/html

Resultat: queda clar a la sortida anterior de l'exemple 4 i 5 (ambdós resultats són iguals), per tant, quan no s'especifiquen opcions amb l'ordre \pwd, pren automàticament l'opció \- P” en compte.

6. Imprimeix la versió de l'ordre 'pwd'.

[email :~$ /bin/pwd --version

pwd (GNU coreutils) 8.23
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Jim Meyering.

Nota: Sovint s'utilitza una ordre pwd sense opcions i mai s'utilitza amb arguments.

Important: potser us heu adonat que estem executant l'ordre anterior com a \/bin/pwd i no com a \pwd.

Aleshores, quina és la diferència? Bé, només \pwd vol dir pwd incorporat a l'intèrpret d'ordres. El vostre intèrpret d'ordres pot tenir una versió diferent de pwd. Consulteu el manual. Quan utilitzem /bin/pwd, estan cridant a la versió binària d'aquesta ordre. Tant l'intèrpret d'ordres com la versió binària de l'ordre imprimeixen el directori de treball actual, tot i que la versió binària té més opcions.

7. Imprimiu totes les ubicacions que contenen un executable anomenat pwd.

[email :~$ type -a pwd

pwd is a shell builtin
pwd is /bin/pwd

8. Emmagatzemeu el valor de l'ordre \pwd a la variable (per exemple, a) i imprimiu-ne el valor des de la variable (important per a la perspectiva dels scripts d'intèrpret d'ordres).

[email :~$ a=$(pwd)
[email :~$ echo "Current working directory is : $a"

Current working directory is : /home/avi

Alternativament, podem utilitzar printf, a l'exemple anterior.

9. Canvieu el directori de treball actual a qualsevol cosa (per exemple /home) i visualitzeu-lo a la línia d'ordres. Executeu una ordre (digueu ls) per verificar que tot està OK.

[email :~$ cd /home
[email :~$ PS1='$pwd> '		[Notice single quotes in the example]
> ls

10. Estableix un indicador de línia d'ordres multilínia (digues alguna cosa com a continuació).

/home
123#Hello#!

A continuació, executeu una ordre (per exemple ls) per comprovar que tot està OK.

[email :~$ PS1='
> $PWD
$ 123#Hello#!
$ '

/home
123#Hello#!

11. Comproveu el directori de treball actual i el directori de treball anterior d'una vegada!

[email :~$ echo “$PWD $OLDPWD”

/home /home/avi

12. Quina és la ruta absoluta (a partir de /) del fitxer binari pwd.

/bin/pwd 

13. Quina és la ruta absoluta (a partir de /) del fitxer font pwd.

/usr/include/pwd.h 

14. Imprimiu el camí absolut (a partir de /) del fitxer de pàgines de manual pwd.

/usr/share/man/man1/pwd.1.gz

15. Escriviu un script d'intèrpret d'ordres que analitzi el directori actual (per exemple, tecmint) al vostre directori d'inici. Si us trobeu al directori tecmint, sortirà \Bé! Esteu al directori tecmint i després imprimiu \Adéu, sinó creeu un directori tecmint sota el vostre directori d'inici i us demanem que hi cd.

Primer creem un directori tecmint, a sota creem un fitxer de script de shell següent amb el nom pwd.sh.

[email :~$ mkdir tecmint
[email :~$ cd tecmint
[email :~$ nano pwd.sh

A continuació, afegiu l'script següent al fitxer pwd.sh.

#!/bin/bash

x="$(pwd)"
if [ "$x" == "/home/$USER/tecmint" ]
then
     {
      echo "Well you are in tecmint directory"
      echo "Good Bye"
     }
else
     {
      mkdir /home/$USER/tecmint
      echo "Created Directory tecmint you may now cd to it"
     }
fi

Doneu permís d'execució i executeu-lo.

[email :~$ chmod 755 pwd.sh
[email :~$ ./pwd.sh

Well you are in tecmint directory
Good Bye

Conclusió

pwd és una de les ordres més senzilles, però més populars i utilitzades. Un bon comandament sobre pwd és bàsic per utilitzar el terminal Linux. Això és tot per ara. Aviat tornaré a ser aquí amb un altre article interessant, fins aleshores estigueu atents i connectats a Tecmint.