Introducción
En este artículo, veremos una serie de comandos útiles que pueden mejorar el uso de la línea de comandos de Linux CLI (Interfaz de línea de comandos) o incluso la consola o terminal.
Bloquear u ocultar un archivo o directorio en Linux
La forma más sencilla de bloquear un archivo o directorio es utilizar los permisos de archivo de Linux. Si eres el propietario de un archivo o directorio, puedes bloquear (eliminar privilegios de lectura, escritura y ejecución) los permisos de otros usuarios y grupos.
Para proteger un archivo de sobrescritura accidental.
chmod 400 nomefile
Para protegerse contra la eliminación accidental, el cambio de nombre o el movimiento de archivos de este directorio.
chmod 500 directory
Haga que un archivo sea privado, editable solo por el usuario que ingresó este comando.
chmod 600 nomefile
Haga un archivo de lectura pública que solo pueda ser editado por el usuario emisor.
chmod 644 nomefile
Los usuarios que pertenecen a su grupo pueden editar este archivo, otros no tienen acceso a él.
chmod 660 nomefile
Protege un archivo de cualquier acceso de otros usuarios, mientras que el usuario que emitió el comando todavía tiene acceso completo.
chmod 700 nomefile
Para archivos que deberían ser legibles y ejecutables por otros, pero solo editables por el usuario emisor.
chmod 755 directory
Modo de uso compartido de archivos estándar para un grupo.
chmod 775 nomefile
Cualquiera puede hacer todo por este archivo.
chmod 777 nomefile
Para ocultar el archivo o directorio a otros usuarios del sistema, cambie el nombre con un punto . al principio del nombre del archivo o directorio, para hacer que el archivo sea "invisible":
mv nomefile.txt.nomefile.txt
De forma predeterminada, cuando ejecuta el comando ls -l, se muestran los permisos de archivo en formato rwx, puede traducir los permisos rwx en formato octal en Linux.
Para ver todos los archivos en el directorio de trabajo actual seguido de los derechos de acceso en forma octal, desde la terminal:
stat -c '% n% a' *
% n: indica el nombre del archivo % a - indica derechos de acceso en forma octal
"Mata" un proceso en Linux
Puede suceder que los comandos genéricos para matar un proceso como kill o killall o pkill no sean suficientes.
Para finalizar permanentemente un proceso, use el comando -KILL.
Primero determine su ID de proceso y luego elimínelo de la siguiente manera:
pidof apache2
sudo kill -KILL 5319
Eliminar de forma permanente un archivo en Linux
Normalmente, usamos el comando rm para eliminar archivos de un sistema Linux, sin embargo, estos archivos no se eliminan por completo, simplemente se almacenan y ocultan en el disco duro y aún pueden recuperarse en Linux y ser vistos por otra persona.
Para evitar esto, podemos usar el comando shred que sobrescribe el contenido del archivo y, opcionalmente, elimina el archivo en sí.
shred -zvu nomefile.txt
-z: agrega una anulación final con ceros para ocultar la destrucción. -u: ayuda a truncar y eliminar archivos después de sobrescribirlos. -v - muestra el progreso.
Para más información:
man shred
Busque la descripción de la palabra clave en la página del manual "man"
El comando man se usa para mostrar las páginas del manual de comandos, cuando se usa con el parámetro -k, busca descripciones breves y nombres de páginas manuales por palabra clave.
Ejemplo:
man -k apache
man -k shred
Cambiar el nombre de varios archivos en Linux
Puede cambiar el nombre de varios archivos en Linux, simultáneamente, con el comando de cambio de nombre. Cambie el nombre de los nombres de archivo proporcionados según una regla especificada en el primer argumento.
El siguiente comando cambia el nombre de todos los archivos .pdf a archivos.doc:
rename -v 's/\.pdf$/\.doc/' *.pdf
Ver registros en tiempo real en Linux
watch se ejecuta repetidamente para rastrear cualquier cambio en la salida. Esto le permite ver la salida del archivo actualizado periódicamente de forma automática. De forma predeterminada, el programa se ejecuta cada 2 segundos. Utilice -n o --interval para especificar un intervalo diferente.
tail proporciona la parte final de los archivos de entrada. Si no se especifica lo contrario, la entrada se considera texto simple y se proporcionan las últimas 10 líneas.
En el siguiente ejemplo, veremos el archivo de registro de autenticación del sistema. Abra dos ventanas de terminal, vea el archivo de registro para verlo en tiempo real en la primera ventana de esta manera:
sudo watch tail /var/log/auth.log
También puede utilizar el comando tail que muestra las últimas partes de un archivo. El parámetro -f le permite ver los cambios en un archivo en tiempo real, para que pueda ver el registro de las entradas del registro en un archivo.
sudo tail -f /var/log/auth.log
Ahora ejecute estos comandos en la segunda terminal para ver el contenido del archivo de registro desde la primera ventana:
sudo mkdir -p /etc/test
sudo rm -rf /etc/test
Encuentra el comando correcto
Para encontrar el comando correcto de acuerdo con sus necesidades, hay un propósito:
Debe ingresar una descripción de un comando que necesita.
Ejemplo: apropos "directorio de lista"
Debería recibir un resultado similar al siguiente:
apropos "list directory"
dir (1) - list directory contents
ls (1) - list directory contents
ntfsls (8) - list directory contents on an NTFS filesystem
vdir (1) - list directory contents
Ejecute el comando anterior
Muchas veces necesitará ejecutar el mismo comando. Si bien puede presionar repetidamente la tecla Arriba en su teclado, puede usar el comando de historial. Este comando enumerará todos los comandos que se han ingresado anteriormente:
history
Un número está asociado con cada comando. Puede invocar este comando usando el signo de exclamación y el número relacionado con el comando:
!45
Utilice Midnight Commander
Midnight Commander es un caparazón visual fácil de usar donde también puedes usar el mouse
Gracias a las teclas F1 - F12, puede realizar fácilmente varias tareas. Solo revisa la leyenda a continuación. Para seleccionar un archivo o carpeta, haga clic en el botón Insertar.
Midnight Commander se llama mc. Para instalar mc en su sistema, use uno de estos comandos.
Sistemas basados en Debian:
sudo apt-get install mc
Sistemas basados en Fedora:
yum install mc
Abra mc desde la terminal escribiendo:
mc
Apague su computadora a una hora específica
A veces es necesario apagar la computadora unas horas después del final de la jornada laboral. Puede configurar su computadora para que se apague a una hora específica usando:
sudo shutdown 21:00
Esto le indicará a su computadora que se apague a la hora específica que proporcionó. También puede indicarle al sistema que se apague después de un número determinado de minutos:
sudo shutdown +15
De esta forma, el sistema se apagará en 15 minutos.
Mostrar información sobre usuarios conocidos
Puede usar un comando simple para enumerar los usuarios del sistema Linux y cierta información básica sobre ellos:
lslogins
Buscar un archivo
Para buscar un archivo en el sistema, use el comando buscar. Un ejemplo para buscar un archivo en el sistema, desde la terminal:
find /home/user -type f
Este comando buscará todos los archivos ubicados en /home /user. El comando de búsqueda es extremadamente poderoso y se puede personalizar con varios comandos para hacer la búsqueda aún más detallada.
Si desea buscar archivos de un tamaño superior a cierto, puede utilizar:
find. -type f -size 10M
El comando anterior buscará en el directorio actual todos los archivos que superen los 10 MB. Asegúrese de no ejecutar el comando desde el directorio raíz de su sistema Linux, ya que esto puede causar una alta E /S del sistema.
Una de las combinaciones más utilizadas es la opción "exec " que le permite realizar algunas acciones sobre los resultados del comando de búsqueda.
Por ejemplo, si queremos buscar todos los archivos en un directorio y cambiar sus permisos. Esto se puede hacer con:
find /home/user/files/-type f -exec chmod 644 {} \;
El comando anterior buscará recursivamente todos los archivos en el directorio especificado y ejecutará el comando chmod en los archivos encontrados.
Construyendo árboles de directorios con un comando
Para crear una carpeta, usa el comando mkdir:
mkdir new_folder
Para crear, por ejemplo, 5 subcarpetas dentro de la carpeta recién creada, ejecute la opción -p de la siguiente manera:
mkdir -p new_folder/{folder_1,folder_2,folder_3,folder_4,folder_5}
Al final, debería tener 5 carpetas ubicadas en new_folder:
ls new_folder/
Copie archivos a varios directorios
La copia de archivos generalmente se realiza con el comando cp. Copiar un archivo generalmente se ve así:
cp /path-to-file/my_file.txt /path-to-new-directory/
Para copiar un archivo en varios directorios al mismo tiempo, puede ejecutar este comando:
echo /home/user/1//home/user/2//home/user/3/| xargs -n 1 cp /home/user/my_file.txt
Eliminar archivos grandes
A veces, los archivos pueden ser extremadamente grandes. Es posible que eliminar el archivo con la utilidad rm no sea suficiente. Puede resolver el problema con el siguiente comando:
> /path-to-file/big_file.log
El comando anterior simplemente escribirá una salida en blanco en el archivo. En palabras más simples, vaciará el archivo sin causar una alta E /S en su sistema.