Serie RHCSA Cómo realizar la gestión de archivos y directorio - Parte 2

Serie RHCSA Cómo realizar la gestión de archivos y directorio - Parte 2

En este articulo, RHCSA Parte 2: Gestión de archivos y directorio, revisaremos algunas habilidades esenciales que se requieren en las tareas diarias de un administrador del sistema.

RHCSA: Realice la gestión de archivos y directorio - Parte 2

Crear, eliminar, copiar y mover archivos y directorios

La gestión de archivos y directorio es una competencia crítica que cada administrador del sistema debe poseer. Esto incluye la capacidad de crear / eliminar archivos de texto desde cero (el núcleo de la configuración de cada programa) y los directorios (donde organizará archivos y otros directorios) y descubrir el tipo de archivos existentes.

El comando touch se puede usar no solo para crear archivos vacíos, sino también para actualizar los tiempos de acceso y modificación de los archivos existentes.

Ejemplo de comando touch

Puedes usar Archivo [nombre de archivo] Para determinar el tipo de un archivo (esto será útil antes de iniciar su editor de texto preferido para editarlo).

Ejemplo de comando de archivo

y RM [nombre de archivo] Para eliminarlo.

Ejemplo de comando RM

En cuanto a los directorios, puede crear directorios dentro de las rutas existentes con mkdir [directorio] o crear un camino completo con mkdir -p [/full/path/to/directorio].

Ejemplo de comando mkdir

Cuando se trata de eliminar directorios, debe asegurarse de que estén vacíos antes de emitir el RMDIR [Directorio] comandar, o usar el más poderoso (manejar con cuidado!) RM -RF [Directorio]. Esta última opción forzará eliminar recursivamente el [directorio] y todos sus contenidos, así que úsalo bajo su propio riesgo.

Redirección de entrada y salida y tuberías

El entorno de la línea de comandos proporciona dos características muy útiles que permiten redirigir el aporte y producción de comandos de y para archivos, y para enviar la salida de un comando a otro, llamado redirección y tuberías, respectivamente.

Para comprender esos dos conceptos importantes, primero debemos comprender los tres tipos más importantes de secuencias de E/S (entrada y salida) (o secuencias) de caracteres, que de hecho son archivos especiales, en el sentido *nix de la palabra.

  1. Entrada estándar (también conocido como stdin) se adjunta por defecto al teclado. En otras palabras, el teclado es el dispositivo de entrada estándar para ingresar los comandos en la línea de comandos.
  2. Salida estándar (también conocido como stdout) está adjunto de forma predeterminada a la pantalla, el dispositivo que "recibe" la salida de comandos y los muestra en la pantalla.
  3. Error estándar (también conocido como stderr), es donde se envían los mensajes de estado de un comando de forma predeterminada, que también es la pantalla.

En el siguiente ejemplo, la salida de LS /VAR se envía a stdout (la pantalla), así como el resultado de LS /Tecmint. Pero en el último caso, es stderr que se muestra.

Ejemplo de entrada y salida

Para identificar más fácilmente estos archivos especiales, se les asigna un descriptor de archivo, una representación abstracta que se utiliza para acceder a ellos. Lo esencial de entender es que estos archivos, al igual que otros, pueden ser redirigidos. Lo que esto significa es que puede capturar la salida de un archivo o script y enviarlo como entrada a otro archivo, comando o script. Esto le permitirá almacenar en el disco, por ejemplo, la salida de comandos para el procesamiento o análisis posteriores.

Para redirigir stdin (fd 0), stdout (fd 1) o stderr (fd 2), los siguientes operadores están disponibles.

Operador de redirección Efecto
> Redirige la salida estándar a un archivo que contiene salida estándar. Si existe el archivo de destino, se sobrescribirá.
>> Agrega la salida estándar a un archivo.
2> Redirige el error estándar a un archivo que contiene salida estándar. Si existe el archivo de destino, se sobrescribirá.
2 >> Agrega un error estándar al archivo existente.
&> Redirige tanto la salida estándar como el error estándar a un archivo; Si existe el archivo especificado, se sobrescribirá.
< Utiliza el archivo especificado como entrada estándar.
El archivo especificado se utiliza tanto para la entrada estándar como para la salida estándar.

A diferencia de la redirección, la canalización se realiza agregando una barra vertical (|) Después de una comando y antes de otro.

Recordar:

  1. Redirección se usa para enviar la salida de un comando a un archivo, o para enviar un archivo como entrada a un comando.
  2. Canalización se usa para enviar la salida de un comando a otro comando como entrada.

Ejemplos de redirección y canalización

Ejemplo 1: redirigir la salida de un comando a un archivo

Habrá momentos en los que necesitará iterar en una lista de archivos. Para hacer eso, primero puede guardar esa lista en un archivo y luego leer ese archivo línea por línea. Si bien es cierto que puede iterar sobre la salida de LS directamente, este ejemplo sirve para ilustrar la redirección.

# ls -1 /var /mail> correo.TXT 
Redirigir la salida del comando Tot un archivo
Ejemplo 2: redirigir tanto stdout como stderr a /dev /null

En caso de que deseemos evitar que se muestren STDOUT y Stderr en la pantalla, podemos redirigir ambos descriptores de archivos a /dev/nulo. Tenga en cuenta cómo cambia la salida cuando se implementa la redirección para el mismo comando.

# ls /var /tecmint # ls /var / /tecmint &> /dev /null 
Redirigir stdout y stderr ouper a /dev /null
Ejemplo 3: Uso de un archivo como entrada a un comando

Mientras que la sintaxis clásica del comando CAT es la siguiente.

# Cat [Archivo (s)] 

También puede enviar un archivo como entrada, utilizando el operador de redirección correcto.

# gato < mail.txt 
Ejemplo de comando de gato
Ejemplo 4: Enviar la salida de un comando como entrada a otro

Si tiene un directorio o un listado de procesos grande y desea poder localizar un archivo o proceso determinado de un vistazo, querrá canalizar la lista de Grep Grep.

Tenga en cuenta que usamos en las tuberías en el siguiente ejemplo. El primero busca la palabra clave requerida, mientras que la segunda eliminará la real comando GREP De los resultados. Este ejemplo enumera todos los procesos asociados con el usuario de Apache.

# PS -EF | Grep Apache | Grep -V Grep 
Enviar salida del comando como entrada a otras páginas: 1 2