GNU/Linux >> Tutoriales Linux >  >> Linux

Encuentre el directorio de trabajo actual de un proceso usando Pwdx en Linux

Conoces el comando "pwd", ¿no? El comando pwd (significa P resentido W trabajando D irectory) se utiliza para imprimir el directorio de trabajo actual. ¿Qué pasa con "pwdx"? ¿Alguna vez lo has usado o has oído hablar de él? ¿No? ¡No hay problema! El comando pwdx se usa para informar el directorio de trabajo actual de un proceso. En esta guía, veremos cómo encontrar el directorio de trabajo actual de un proceso usando el comando pwdx en Linux.

Encuentre el directorio de trabajo actual de un proceso usando Pwdx en Linux

El uso general del comando pwdx se indica a continuación:

$ pwdx <PID>

A los efectos de esta guía, encontraremos el directorio de trabajo de firefox proceso.

Primero, necesitamos encontrar el ID de proceso del firefox. Para hacerlo, use el comando "ps" como se muestra a continuación:

$ pgrep firefox
5238

El PID de Firefox es 5238. Ahora, busque el directorio de trabajo del PID 5238 como se muestra a continuación:

$ pwdx 5238

Salida de muestra:

5238: /home/sk

Alternativamente, puede combinar ambos comandos como un solo comando y encontrar el directorio de trabajo actual del proceso de Firefox como se muestra a continuación:

$ pwdx $(pgrep firefox)

Como puede ver, el directorio de trabajo actual del proceso de Firefox es /home/sk . ¡De esta manera podemos averiguar fácilmente en qué directorio se está ejecutando un proceso actualmente! Tenga en cuenta que estos comandos no muestran desde dónde se invocó un proceso, solo dónde se encuentra actualmente.

Si desea imprimir el directorio actual de varios procesos, mencione los PID separados por espacios como se muestra a continuación:

$ pwdx 5238 21126
5238: /home/sk
21126: /home/sk

Para obtener más detalles, consulte las páginas man.

$ man pwdx

Encuentre el directorio de trabajo actual de un proceso Linux usando los comandos ls, lsof y readlink

Si pwdx no está disponible por algún motivo, los siguientes comandos pueden proporcionarle el directorio de trabajo de los procesos de Linux:

  • ls
  • lsof
  • leer enlace

Primero, busque el PID del proceso con el comando pgrep:

$ pgrep firefox
5238

A continuación, busque el directorio de trabajo actual del proceso usando el comando "ls" como se muestra a continuación:

$ ls -l /proc/5238/cwd

Aquí, cwd indica el directorio de trabajo actual.

Salida de muestra:

lrwxrwxrwx 1 sk sk 0 Jun 17 15:31 /proc/5238/cwd -> /home/sk

Para averiguar el directorio de trabajo actual del proceso de Firefox usando el comando "lsof", ejecute:

$ lsof -p 5238 | grep cwd

Alternativamente, combine ambos comandos y obtenga el resultado con la siguiente línea:

$ lsof -p $(pgrep firefox) | grep cwd

Salida de muestra:

firefox 5238 sk cwd DIR 8,1 4096 4325378 /home/sk

Descubra el directorio de trabajo actual del proceso de Firefox usando el comando "readlink", ejecute:

$ readlink -e /proc/5238/cwd/
/home/sk

Consulte las páginas del manual para obtener más información:

$ man ls
$ man lsof
$ man readlink

Espero que esto ayude.

Lectura relacionada:

  • Cómo averiguar cuánto tiempo ha estado ejecutándose un proceso en Linux
  • Cómo cambiar la prioridad de un proceso en Linux
  • Cómo mostrar la información del proceso mediante Procs en Linux

Linux
  1. ¿Cómo ejecuto un programa con un directorio de trabajo diferente al actual, desde el shell de Linux?

  2. Comprobar si un directorio está vacío usando C en Linux

  3. ¿Cómo saber qué proceso está usando un archivo en Linux?

  4. Encontrar un directorio en una terminal de Linux

  5. Linux:averigüe qué proceso está utilizando toda la RAM?

Cómo contar archivos en el directorio en Linux

Cómo crear un directorio en Linux usando el comando mkdir

¿Cómo imprimir el directorio de trabajo usando el comando pwd de Linux?

Encuentra texto en archivos en Linux usando grep

El comando find Directory de Linux:Explicación

Ejemplos de comandos pwdx en Linux