En este artículo, le explico cómo utilizar los comandos de terminal incorporados para proporcionar información sobre algunos comandos y lo que hacen.
También proporciono ejemplos para ilustrar el proceso.
La herramienta de línea de comandos es potente. Existen herramientas que convierten un trabajo tedioso de una interfaz gráfica de usuario (GUI) en una tarea que tarda solo unos segundos. Eliminar las últimas cuatro líneas de cada fila de un archivo grande sería un proceso largo en una aplicación con GUI. Sin embargo, esto se puede automatizar en la línea de comandos.
Las formas más comunes de abrir una ventana de terminal en Ubuntu Linux son las siguientes:
Existen muchos comandos asociados al shell de la terminal en Ubuntu Linux. En el siguiente artículo, se enumeran los más utilizados, en los grupos que afectan.
Hay tres comandos principales que usamos para proporcionar toda la información necesaria para utilizar los diversos comandos de terminal.
El comando man muestra el manual de cualquier comando que se utilice en el terminal.
La mayoría de los comandos de shell aceptan diversas opciones. Para obtener información sobre un comando y una lista de las opciones disponibles, utilice la man
abreviación para comando manual . Proporcione el nombre del comando sobre el cual desea obtener más información como argumento. Ese es el comando en el que funciona el man
comando.
Ejemplo: Si ingresa el comando man who
, se muestra la siguiente salida.
WHO(1) User Commands WHO(1)
NAME
who - show who is logged on
SYNOPSIS
who [OPTION}... [ FILE | ARG1 ARG2 ]
DESCRIPTION
-a, --all
same as -b -d --login -p -r -t -T -u
-b, --boot
time of last system boot
-d, --dead
print dead processes
-H, --heading
print line of column headings
-i, --idle
add idle time as HOURS:MINUTES, . or old (deprecated, use -u)
-l, --login
print system login processes
--lookup
attempt to canonicalize hostnames via DNS
-m, only hostname and user associated with stdin
Manual page who(1) line 1
Varios de los manuales ocupan varias pantallas. Utilice el cursor oARROW
las teclas o las teclas Page Up/Page Down para navegar por el texto. La tecla de la barra espaciadora muestra la siguiente línea de texto. Si presiona la tecla q, se cerrará el manual y regresará al shell.
Podemos ver en la página de manuales que podemos usar la -a
opción para mostrar más información sobre las sesiones de usuarios activos.
user@3[user]$ who -a
|
|
|
|
Nov 14 13:47 |
|
10 |
id=si |
term=0 |
exit=0 |
|
|
|
system boot |
Nov 14 13:47 |
|
|
|
|
|
|
|
|
run-level 5 |
Nov 14 13:47 |
|
|
Last=S |
|
|
|
|
|
|
Nov 14 13:47 |
|
835 |
id=15 |
term=0 |
exit=0 |
LOGIN |
|
|
tty1 |
Nov 14 13:47 |
|
958 |
id=1 |
|
|
root |
|
- |
tty2 |
Nov 14 19:15 |
00:19 |
959 |
|
|
|
user |
|
- |
tty3 |
Nov 14 19:28 |
00:06 |
960 |
|
|
|
LOGIN |
|
|
tty4 |
Nov 14 13:47 |
|
961 |
id=4 |
|
|
LOGIN |
|
|
tty5 |
Nov 14 13:47 |
|
962 |
id=5 |
|
|
LOGIN |
|
|
tty6 |
Nov 14 13:47 |
|
963 |
id=6 |
|
|
user |
|
? |
:0 |
Nov 14 13:47 |
? |
965 |
|
|
|
|
|
|
pts/3 |
Nov 14 16:29 |
|
1746 |
id=/3 |
term=0 |
exit=0 |
user@3[user]$
También lee archivos de ayuda para programas; el man
comando también puede proporcionar información sobre shells, funciones y bibliotecas.
Si no está seguro de cómo usar un comando específico, ejecute el comando con los -h
switches o –help
. Puede ver la información de uso y una lista de opciones que puede utilizar con el comando.
Ejemplo: Si desea saber cómo usar el wget
comando, escriba wget –help
o wget -h
.
User@Ubuntu@#$ wget --help
GNU Wget 1.12, a non-interactive network retriever.
Usage: wget [OPTION]... [URL]...
Mandatory arguments to long options are mandatory for short options t
oo.
Startup:
-V, --version display the version of Wget and exit.
-h, --help print this help.
-b, --background go to background after startup.
-e, --execute=COMMAND execute a '.wgetrc' -style command.
Logging and input file:
Por lo general, esto imprime una gran cantidad de información en la terminal. Por lo tanto, el resultado puede ser difícil de leer. Para leer la salida con mayor facilidad, puede pipe
hacerlo a través del comando less . Esto le permitirá desplazarse con las teclas de cursor/FLECHA en el teclado.
Ejemplo: wget -help | less
GNU Wget 1.12, a non-interactive network retriever.
Usage: wget [OPTION]... [URL]...
Mandatory arguments to long options are mandatory for short options t
oo.
Startup:
-V, --version display the version of Wget and exit.
-h, --help print this help.
-b, --background go to background after startup.
-e, --execute=COMMAND execute a '.wgetrc' -style command.
Logging and input file:
-o, --output-file=FILE log messages to FILE.
:
Presione la tecla q para cerrar la utilidad less cuando haya terminado.
Para encontrar una opción específica, puede pipe
obtener la salida a través del grep
comando. (Por ejemplo: Utilice el siguiente comando para buscar opciones que contengan la palabra proxy.
)
wget -help | grep proxy
User@ubuntu:~$ wget --help | grep proxy
--no-proxy explicitly turn off proxy.
--proxy-user=USER set USER as proxy username.
--proxy-password=PASS set PASS as proxy password.
User@Ubuntu:~$
Algunos comandos también se documentan dentro del info
sistema. La información aquí complementa lo que muestra el man
comando.
Ejemplo: Ingrese el comando info ls,
que se muestra en la siguiente salida.
[support@support]$" info ls
Ahora puede ver un manual con información importante sobre el ls
comando.
File: coreutils.info, Node: ls invocation, Next: dir invocation, Up: Directory listing
'ls': List directory contents
=============================
The 'ls' program lists information about files (of any type,
including directories). Options and file arguments can be intermixed
arbitrarily, as usual.
For non-option command-line arguments that are directories, by
default 'ls' lists the contents of directories, not recursively, and
omitting files with name beginning with '.'. For other non-option
arguments, be default 'ls' lists just the file name. If no non-option
argument is specified, 'ls' operates on the current directory, acting
as if it had been invoked with a single argument of '.'.
By default, the output is sorted alphabetically, according to the
locale settings in effect. (1) If standard output is a terminal, the
output is in columns (sorted vertically) and control characters are
output as question marks; otherwise, the output is listed one per line
and control characters are output as-is.
--zz-Info: (coreutils.info.gz)ls invocation, 48 lines --Top------------------
Welcome to info version 4.3 Type C-h for help, m for menu item.
Puede desplazarse por las páginas presionando la tecla de la barra espaciadora o utilizando el cursor oARROW
las teclas.
help
, presione Hquit
, presione Q
Puede hacer casi cualquier cosa en un terminal, que también haría desde una GUI.
Como se mencionó anteriormente, muchos comandos se diseñaron primero para funcionar en el terminal y luego se puso una GUI en la parte superior. Por tal razón, algunas GUI pueden parecer engorrosas: al principio, eran un elemento secundario, ya que, en la mayoría de las compilaciones de servidores Linux, no eran motivo de preocupación.
La ubicación predeterminada de la terminal que se abrirá en el menú se encuentra en la carpeta de inicio, conocida como ~
El operador puede encontrar el .
directorio actual. La mayoría de los comandos, cuando actúan sobre la selección de la carpeta actual, operan en comandos, ubicaciones y archivos, y distinguen entre mayúsculas y minúsculas. /home
no es lo mismo que /HOME
o/Home
.
Utilice la tecla de tabulación para completar los nombres de archivo si tiene un título de controlador largo. driver-128947232jaseu.sh
por ejemplo, escriba dri
e ingrese el resto. Siempre y cuando no tenga dos nombres que comiencen con dri
y, si lo hace, agregue otro carácter para hacerlo driv
y vuelva a intentarlo. Asegúrese de que la opción de autocompletar coincida con lo que desea ver.
Casi cualquier comando se puede leer en su totalidad mediante la man
página o escribiendo -h
o --help
después de escribir el comando inicial. Esta sintaxis es man command_name
, command_name -h
o command_name --help
.
Para obtener más información, puede usar info. Se puede buscar un comando mediante info command_name
. para la mayoría de estos comandos que forman parte del paquete Coreutils. También puede encontrar info
mediante info coreutils command_name
la invocación donde el comando buscó reemplazoscommand_name
.
Prácticamente cualquier comando puede mostrar lo que está sucediendo de manera exacta, paso a paso. Por lo general, se trata de o -v
--verbose
.
Puede especificar varios indicadores de comandos en un comando a la vez para obtener más información. Consulte el ls -al
siguiente ejemplo.
Los nombres de comandos no siempre son obvios: debido a las limitaciones de espacio en los viejos tiempos de UNIX, se acortaron y estas convenciones se bloquearon.
cd
lo dirige de regreso al inicio, al igual que cd ~
cd..
lo hace retroceder un directorio. A partir de , cd..
lo coloca en ./home/user/Desktop
/home/user
Esto se puede expandir a la cd ../../
que lo mueve hacia atrás dos directorios a /home
.
cd foldername/
lo hace avanzar a la carpeta especificada en la carpeta actual.
/
faltante, es una omisión importante. Si estoy en /home/user
y quiero llegar a Desktop
. Debo escribir cd Desktop/
sin antes /
Desktop
. Escribir /
antes de colocarnos en la raíz del sistema de archivos que no funcionaría.
cd /some/other/path
lo dirige a la ruta de acceso de la carpeta especificada, Si tiene el camino correcto. No olvide que puede utilizar la TAB
clave para completar automáticamente.
ls
muestra todos los archivos de la carpeta actual.
ls -l
proporciona una lista más larga, incluidos los propietarios, los permisos, el tamaño y la fecha de modificación.
ls -a
muestra las carpetas y los archivos ocultos, y la lista normal.
ls -al
combina dos opciones para mostrar las carpetas y los archivos ocultos en el formato largo.
ls -h
- Muestra los tamaños de archivo en tamaños KB, MB, GB,
de archivo legibles por humanos en lugar de bytes. Se utiliza con mayor frecuencia con la -l
marca.
Puede ver archivos en directorios en los que ni siquiera está. Si estoy en /home/user/Desktop
y deseo ver un archivo en /home/user
, puedo hacer ls ../
lo que enumera los archivos de un directorio.
cp file /path/to/folder
copia el archivo especificado en la ruta de acceso especificada.
cp -r folder /path/to/folder
copia reiteradamente el contenido de la carpeta en otra carpeta.
cp *.extension /path/to/folder
copia los archivos que coinciden con la extensión especificada en la carpeta nueva. Para copiar todos los archivos.doc, se convierte en cp *.doc /path/to/folder
y la carpeta debe existir.
cp name* /path/to/folder
- Copia todos los archivos que comienzan con name
en la carpeta determinada. Para copiar todos los archivos que comienzan con example
, se convierte en cp example* /path/to/folder
y la carpeta ya debe existir.
La sintaxis de mv
es similar al ejemplo anterior con cp
exento, por ejemplo, n.º 2. mv
no toma la -r
marca, ya que mover una carpeta también mueve su contenido. La sintaxis no es exacta en todos los casos, pero funciona con los ejemplos anteriores. Consulte las páginas de manuales para obtener más detalles.
La eliminación de archivos mediante rm
es permanente. No utiliza la papelera. Use esto con precaución y asegúrese de eliminar exactamente lo que desea antes de presionar la Enter
tecla. Si sobreaplica los comandos de eliminación, nunca termina bien.
rm file
- Elimine ese archivo específico de la computadora.
rm -r folder
- Elimine esa carpeta específica de la computadora.
rm -rf folder
- Elimina la carpeta específica de la computadora de manera forzosa. Este comando puede arruinar la configuración si se utiliza de manera incorrecta.
Puede editar archivos mediante nano
un terminal para realizar archivos rápidos y difíciles hasta configuraciones completas. Puede ser útil, pero maneja archivos de texto sin formato y archivos de programación, por lo que cosas como los documentos de Microsoft Word no se abren correctamente.
Si la raíz posee un archivo, un usuario normal no puede editarlo. nano
debe tener el sudo
prefijo ; para guardar los cambios. De lo contrario, se abre en modo de solo lectura.
nano newfile.whatever
del nombre especificado y lo abrirá para su edición.
nano existing_file
abre el archivo existente para su edición.
Desde el interior de nano
Guarde el archivo presionando las CTRL+O
teclas juntas y cambie el nombre o presione la Enter
tecla para mantener el mismo nombre. Esto guarda el archivo.
Para salir nano
, utilice las CTRL+X
teclas juntas. Si tiene cambios no guardados, se le preguntará si desea guardarlos.
mkdir folder_name
crea la carpeta con el nombre especificado.
mkdir -p /path/to/folder/name
crea cada carpeta según sea necesario. Para crear una carpeta /home/user/1stfolder/2ndfolder
y solo /home/user
existe, el uso mkdir -p
hace que ambos directorios 1stfolder,
y 2ndfolder
.
ps aux
- Enumera todos los procesos en detalle que se ejecutan en la computadora. Esto incluye el usuario, el ID PID,
de proceso y el nombre del proceso. Con esto, puede ver la lista de procesos y, si es necesario, puede eliminar los procesos innecesarios o detenidos.
kill PID
: el PID es un número que hace referencia al proceso infractor. Debe obtener el PID de un comando como ps aux
. Si un proceso se niega a dejar de funcionar, también puede especificar kill -9 PID
cuál debe finalizar el proceso por cualquier medio.
killall program
: Killall
elimina by name
todas las instancias de listed program
. Si hay, por ejemplo, 3 sesiones abiertas del navegador de Internet Firefox, killall Firefox
hace exactamente eso, elimina todas las sesiones de Firefox. kill
tomaría el PID especificado del proceso de Firefox infractor que desea eliminar y eliminar solo ese.
xkill
es una manera de GUI de hacer clic y eliminar ventanas. Si escribe, xkill
se debe abrir un ícono de eje central y red troncal y se elimina la siguiente ventana en la que se hace clic.
Pipes
se muestran como una straight bar,
clave también conocida como la |
clave.
Es una tecla de uso poco frecuente en Windows, que suele encontrarse en la tecla de barra diagonal inversa.
Se usan para vincular comandos. Pipes
enrutan el resultado de un comando para usarlo como entrada en un segundo comando cuando están conectados.
Consulte los recursos en línea para obtener más información sobre pipes
y su uso, ya que hay volúmenes escritos en ellos.
>
se utiliza para overwrite
el contenido de los archivos existentes mediante su reemplazo por la salida del nuevo comando.
>>
se utiliza para obtener append
información sobre los archivos existentes. Esto es útil para registrar las acciones.
Example:
ps aux > processes.log
envía la salida de ps aux
al archivo processes.log
para ver la salida del comando en un editor de texto y sobrescribe el contenido actual del archivo.
tee
se utiliza junto con para |
tomar la salida del comando y enviarla a otro lugar. Esto es útil si hay errores que se pasan por alto. De esta manera, todo lo que aparece en la pantalla también se registra en un archivo.
Ejemplo: dmesg
| tee boot.txt
ejecutaría el comando dmesg
que muestra la información de arranque inicial. el |
envía la salida de dmesg
a tee
, que luego realiza su trabajo enviándolo al terminal y al archivo boot.txt
de registro.
¿Desea ejecutar un archivo en el directorio actual después de marcarlo como ejecutable? El ./
operador puede ejecutar el archivo como un usuario normal siempre que no necesite derechos de raíz. ./
literalmente significa in the current directory
que no funciona en archivos fuera del directorio actual.
Si desea ejecutar un archivo que no está en el directorio actual, debe pasar la ruta al programa en ejecución adecuado. Si es un programa de Python, lo es python /path/to/file
y si es un archivo shell, es sh /path/to/file
como un ejemplo. Hay otros programas, pero estos son los más comunes.
Si desea ejecutar un archivo con derechos de raíz porque recibió operation not permitted?
. Debe anteponer el comando a sudo
. Al igual que en el ejemplo anterior, sudo python /path/to/file
ejecuta el script con derechos de raíz.
Si desea ejecutar un programa de GUI desde el terminal, escriba el nombre case sensitive!
del programa y se iniciará. Esto hace que el terminal actual no se puede utilizar. Cerrar el terminal mientras el programa está abierto también elimina el programa. Una mejor manera es crear un segundo plano del programa, utilizando program_name
y escribiendo la palabra exit
en el terminal para cerrarlo y mantener el proceso en ejecución.
Si desea ejecutar un programa de GUI con derechos de raíz desde el terminal, utilice el prefijo gksudo
o gksu
no sudo
. Usar sudo
para iniciar aplicaciones gui es un mal hábitos y se debe evitar.
sudo
Utilice not
solo porque aparece algo Operation not permitted.
Tenga en cuenta que puede destroy
ejecutar comandos en el lugar incorrecto con derechos de raíz. Asegúrese de que los archivos provengan de fuentes confiables.
¿Se perdió en un directorio? Escriba pwd
para imprimir el directorio de trabajo.
¿Desea calcular el espacio de disco? df -h
Puede mostrarle una cifra rápida.
¿Desea calcular el tamaño de una carpeta o un archivo? du -cksh target_name
hace exactamente eso. ¿Desea calcular el tamaño de la carpeta actual? du -cksh
.
¿Desea marcar un archivo como ejecutable? chmod +x filename
lo hace.
¿Tiene que montar un iso? Linux tiene esta funcionalidad incorporada. Cree un directorio en algún lugar, por ejemplo /home/user/isomount
, emita el comando mount -o loop /path/to/myisofile.iso /home/user/isomount
y el contenido se monte dentro de esa carpeta.
Después de ejecutar un comando, debe volver a ejecutarlo, pero no puede recordar exactamente cómo le fue. Escriba history
en el terminal e imprima el historial de comandos. ¿Desea borrar el historial? history -c
borra la información.