Obtener ruta absoluta en Bash
- Cómo obtener la ruta absoluta en Bash
- El directorio raíz de un archivo en Linux
-
Use el comando
readlink
para obtener la ruta absoluta en Linux -
Use el comando
realpath
para obtener la ruta absoluta en Linux -
Use el comando
buscar
para obtener la ruta absoluta en Linux
En este artículo de Bash, aprenderemos diferentes métodos para obtener la ruta absoluta en Linux. También aprenderemos algunos comandos diferentes de Linux para obtener la ruta absoluta de un archivo.
Antes de comenzar, debemos comprender los conceptos básicos de rutas absolutas
y relativas
en el sistema operativo Linux.
Cómo obtener la ruta absoluta en Bash
Los componentes básicos de un sistema operativo son los archivos y las carpetas. Siendo usuarios de Linux, operamos varias acciones de archivos y directorios.
Encontrar la ruta completa de un archivo es uno de esos procesos. La ruta completa de un archivo también se conoce como su ruta canónica o absoluta.
Una dirección utilizada para encontrar un archivo o una carpeta se denomina ruta. Una ruta absoluta es una dirección o ubicación completa que nos permite recuperar el archivo deseado desde cualquier ubicación.
Mientras tanto, se establece una ruta relativa sobre el directorio de trabajo activo.
Una ruta es una referencia a un directorio o archivo. En Linux, hay dos tipos de rutas: absolutas y relativas.
El directorio de trabajo actual determina la ruta relativa. Por otro lado, la ruta absoluta es la ruta completa a un archivo o directorio.
Hay varios métodos en Bash para obtener la dirección completa de un script. Podemos usar realpath
, readlink
, o incluso escribir nuestro pequeño script personalizado.
Usar una dirección relativa hace que obtener la dirección completa sea muy simple.
La ruta completa se proporciona explícitamente desde el directorio raíz. El /
es un método fácil para saber cuál es cuál.
Una ruta relativa no comienza con /.
(la carpeta raíz). Este artículo explicará cómo encontrar la ruta absoluta de un script en Bash.
Este artículo repasa numerosos métodos para determinar la ruta completa de un archivo o carpeta.
El directorio raíz de un archivo en Linux
El directorio superior del sistema de archivos es el directorio raíz o el directorio absoluto en Linux. El directorio raíz se indica con una barra inclinada /
.
Podemos describir la ubicación de cualquier archivo o directorio en el sistema de archivos con una ruta completa que comience con una barra inclinada /
.
Esta ruta completa se denomina ruta absoluta, lo que significa que indica cada paso que se debe tomar desde la raíz o el comienzo absoluto del sistema de archivos.
Utilice el comando cd
El comando cd
(cambiar directorio) en el sistema operativo Linux se utiliza para modificar el directorio de trabajo actual.
$ cd /tmp
Utilice el comando mkdir
Luego, usamos el comando mkdir
seguido del nombre que le quieres dar al nuevo directorio.
$ mkdir -p dir11/dir12/dir13/dir14/dir15
Utilice el comando tocar
para crear un directorio
Después de crear un nuevo directorio o directorios, usaremos el comando tocar
para crear, cambiar o modificar nuestros archivos.
Código de ejemplo:
$ touch dir11/dir12/file12.txt
$ touch dir11/dir12/dir13/dir14/file14.txt
$ touch dir11/dir12/dir13/dir14/dir15/file15.txt
La salida del código:
$ tree /tmp/dir11/
/tmp/dir11/
└── dir12
├── dir13
│ └── dir14
│ ├── dir15
│ │ └── file15.txt
│ └── file14.txt
└── file12.txt
En el ejemplo anterior, hemos creado 4 directorios y 3 archivos. Nuestro directorio absoluto es dir11/dir12/dir13/dir14/dir15/file15.txt
.
La ruta relativa de un archivo en Linux
Las rutas absolutas son fáciles de entender pero también pueden ser inconvenientes para trabajar con ellas, especialmente cuando se trabaja con directorios profundamente anidados.
Aquí es donde la ruta relativa resulta útil. Además, mirando el código anterior, nuestra ruta de directorio relativa es dir13/file12.txt
.
Use el comando readlink
para obtener la ruta absoluta en Linux
El comando readlink
se puede utilizar para obtener la dirección completa de un archivo. readlink
se usa a menudo para capturar la ruta de un enlace simbólico o un archivo canónico.
Sin embargo, readlink
también puede calcular la ruta absoluta dada una ruta relativa. Debe adjuntar una bandera al enlace de lectura
en todas las circunstancias.
En tales casos, la bandera f
es la más utilizada.
El comando readlink
devuelve una lista de nombres de archivos canónicos. Para encontrar la ruta completa de un archivo, podemos utilizar el argumento -f
de este comando.
Estos son los directorios, y hay archivos en estos directorios. Podemos obtener la ruta absoluta de cualquier archivo que necesitemos.
Código de ejemplo:
$ cd /tmp/dir11/dir12/dir13/dir14/dir15/
Escribiremos el nombre del archivo del que queremos obtener la ruta.
$ readlink -f file15.txt
Después de usar el readlink -f
con el nombre del archivo, tenemos la ruta exacta del archivo, y aquí está:
/tmp/dir1/dir2/dir3/dir4/dir5/file5.txt
Como podemos ver en la salida del código, obtenemos la ruta absoluta del archivo que queríamos.
Use el comando realpath
para obtener la ruta absoluta en Linux
Como alternativa podemos utilizar el comando realpath
para obtener la ruta absoluta de un archivo en Linux.
Código de ejemplo:
$ cd /tmp/dir11/dir12/dir13/dir14/
$ realpath file14.txt
Aquí está la ruta del archivo file14.txt
.
/tmp/dir1/dir2/dir3/dir4/file4.txt
Como podemos ver, usando el comando realpath
podemos obtener la ruta absoluta deseada de un archivo en Linux.
Use el comando buscar
para obtener la ruta absoluta en Linux
Podemos encontrar la estructura o jerarquía de un directorio usando el comando buscar
. En Linux, podemos usar el comando buscar
para imprimir la ruta o ubicación absoluta de un archivo.
Usaremos el siguiente código para encontrar la ruta absoluta del file14.txt
.
$ cd /tmp/dir11/
$ find $PWD -type f -name file14.txt
Y la ruta absoluta del archivo file14.txt
es:
/tmp/dir11/dir12/dir13/dir14/file14.txt
Como podemos ver en el resultado anterior del código, obtenemos la ruta absoluta del archivo que queríamos usando el comando buscar
en la terminal.
Esperamos que este artículo le resulte útil para comprender cómo obtener la ruta absoluta de cualquier archivo en el sistema operativo Linux.
My name is Abid Ullah, and I am a software engineer. I love writing articles on programming, and my favorite topics are Python, PHP, JavaScript, and Linux. I tend to provide solutions to people in programming problems through my articles. I believe that I can bring a lot to you with my skills, experience, and qualification in technical writing.
LinkedIn