Loading repository data…
Loading repository data…
unixfool / repository
Guía práctica Unix y Linux. Comandos básicos.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Comando básicos Unix y Linux.
Vamos a ver a continuación la sintaxis y función de algunas órdenes sencillas con objeto de familiarizarnos con la técnica general utilizada en UNIX para invocar programas.
Cuando deseamos finalizar una sesión de trabajo, deberemos informar de ello al sistema. La orden exit se emplea para avisar al sistema de nuestro fin de sesión. Sintaxis: exit
[y2k@anaconda ~]$ exit
cerrar sesión
root@anaconda:~ #
who (am i)La orden o comando who Nos informa acerca de quién o quiénes están conectados actualmente al sistema. También muestra información,
en la segunda columna, relativa al terminal asociado a cada usuario, y por último, en la columna tercera, la fecha y hora en la que el usuario entró en sesión.
root@anaconda:~ # who
y2k pts/2 Feb 17 13:27 (192.168.1.200)
root@anaconda:~ #
mail usuario(s)El sistema UNIX/LINUX proporciona un mecanismo de correo electrónico o e-mail que permite envíar mensajes de unos usuarios a otros. Para enviar un mensaje no es necesario que el usuario destinatario esté conectado en ese momento. Ya que toda la correspondencia será depositada en su buzón.
[y2k@anaconda ~]$ mail
No mail for y2k
[y2k@anaconda ~]$
[y2k@anaconda ~]$ mail --help
mail: illegal option -- -
Usage: mail [-dEiInv] [-s subject] [-c cc-addr] [-b bcc-addr] [-F] to-addr ...
[-sendmail-option ...]
mail [-dEHiInNv] [-F] -f [name]
mail [-dEHiInNv] [-F] [-u user]
mail [-d] -e [-f name]
[y2k@anaconda ~]$
[luis@anaconda ~]$ mail y2k@localhost
Subject: Prueba de Mensajeria Mail.
Hola, Este es un mensaje Test.
.
EOT
[luis@anaconda ~]$
[luis@anaconda ~]$ mail y2k@localhost
Subject: Prueba de Mensajeria Mail.
Hola, Este es un mensaje Test.
.
EOT
[luis@anaconda ~]$
write usuarioLa orden o comando write Se utiliza para comunicarnos con otros usuarios que estén en ese momento conectados a nuestro mismo sistema.
(write) NO funciona para usuarios en sistemas diferentes. En este EJ tenemos los usuarios luis y y2k
El usuario: luis, escribira al usuario y2k. Para que vea el mensaje en el terminal.
[luis@anaconda ~]$ write y2k
Hola y2k, soy Luis! :)
El usuario: luis envio un mensaje al usuario y2k En tiempo real. Ahora veamos como veria el usuario. y2k. el mensaje.
[y2k@anaconda ~]$ ~
Message from y2k@anaconda on pts/1 at 13:50 ...
Hola y2k, soy Luis! :)
mesg [y/n]Esta orden se utiliza para modificar los derechos de escritura por parte de los otros usuarios en nuestro terminal.
De tal manera que si alguien nos quiere enviar un mensaje tenemos desactivados estos derechos, no seremos interrunpidos.
La prohibición de acceso de escritura no afecta al administrador del sistema. root .
[y2k@anaconda ~]$ mesg
is y
[y2k@anaconda ~]$ mesg n
[y2k@anaconda ~]$ mesg
is n
[y2k@anaconda ~]$
dateLa orden date informa sobre la fecha y la hora actuales. Para ello, date consulta previamente el reloj del hardware del sistema, el cual incrementa su valor a iontervalos regulares de tiempo.
Estos intervalos suelen ser pequeños, de manera que pueda obternerse bastante resolución.
[y2k@anaconda ~]$ date --help
date: illegal option -- -
usage: date [-jnRu] [-d dst] [-r seconds|file] [-t west] [-v[+|-]val[ymwdHMS]]
[-I[date | hours | minutes | seconds]]
[-f fmt date | [[[[[cc]yy]mm]dd]HH]MM[.ss]] [+format]
[y2k@anaconda ~]$
[y2k@anaconda ~]$ date +"Son las %r del %d de %h de %y"
Son las 04:37:04 p. m. del 17 de feb. de 21
[y2k@anaconda ~]$
Son operadores asociados a % son:
* r Hora en formato AM-PM
* d Día del mes.
* m Mes
* y Año
* w Día de semana
* H Hora
* M Minutos
* S Segundos
De todas formas, la manera más común de utilizar la orden es la siguiente:
[y2k@anaconda ~]$ date
miércoles, 17 de febrero de 2021, 16:35:39 CET
[y2k@anaconda ~]$
echo cadena de caracteresLa orden echo repide todo lo que le pasemos como parámetro.
Esta orden se utiliza mucho dentro de los programas de shell que veremos más adelante, así como para visualizar las variables del intérprete de órdenes.
Las variables comentadas las utiliza el propio shell para almacenar valores de configuración e información.
[y2k@anaconda ~]$ echo Esto es para la el canal IRCAyuda @ Undernet.org
Esto es para la el canal IRCAyuda @ Undernet.org
[y2k@anaconda ~]$
[y2k@anaconda ~]$ echo $TERM
xterm-256color
[y2k@anaconda ~]$
[y2k@anaconda ~/EJ]$ echo "Crear un archivo con echo" > archivo.txt ; ls -a
. .. archivo.txt
[y2k@anaconda ~/EJ]$
banner cadenaLa orden banner se utiliza para visualizar en letras grandes la cadena que le pasemos como parámetro.
Inicialmente, se desarrolló para etiquetar la salida de las impresoras de línea.
De esta manera, si varias personas mandan imprimir distintos trabajos, pueden saber dónde
comienza el suyo por el hecho de tener una cabecera son su nombre que permitirá distinguirlo de los demás.
[y2k@anaconda ~/EJ]$ banner -w30 hola
# #
#####################
#####################
#
##
#############
############
#
####
#########
## ##
# #
# ##
## ##
#########
####
# #
#####################
#####################
##
###### ##
## ## ###
# # #
## ## ##
###########
##
[y2k@anaconda ~/EJ]$
[y2k@anaconda ~]$ banner --help
banner: illegal option -- -
usage: banner [-d] [-t] [-w width] message ...
[y2k@anaconda ~]$
cal [mes] [año]Sin ningún parámetro, cal visualiza el calendario correspondiente al mes actual.
Si le pasamos como parámetro un año, por ej. 2000. mostrará el calendario completo correspondiente al año en custión.
[y2k@anaconda ~]$ cal
Febrero 2021
do lu ma mi ju vi sá
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28
[y2k@anaconda ~]$
[y2k@anaconda ~]$ cal 2000
2000
Enero Febrero Marzo
do lu ma mi ju vi sá do lu ma mi ju vi sá do lu ma mi ju vi sá
1 1 2 3 4 5 1 2 3 4
2 3 4 5 6 7 8 6 7 8 9 10 11 12 5 6 7 8 9 10 11
9 10 11 12 13 14 15 13 14 15 16 17 18 19 12 13 14 15 16 17 18
16 17 18 19 20 21 22 20 21 22 23 24 25 26 19 20 21 22 23 24 25
23 24 25 26 27 28 29 27 28 29 26 27 28 29 30 31
30 31
Abril Mayo Junio
do lu ma mi ju vi sá do lu ma mi ju vi sá do lu ma mi ju vi sá
1 1 2 3 4 5 6 1 2 3
2 3 4 5 6 7 8 7 8 9 10 11 12 13 4 5 6 7 8 9 10
9 10 11 12 13 14 15 14 15 16 17 18 19 20 11 12 13 14 15 16 17
16 17 18 19 20 21 22 21 22 23 24 25 26 27 18 19 20 21 22 23 24
23 24 25 26 27 28 29 28 29 30 31 25 26 27 28 29 30
30
Julio Agosto Septiembre
do lu ma mi ju vi sá do lu ma mi ju vi sá do lu ma mi ju vi sá
1 1 2 3 4 5 1 2
2 3 4 5 6 7 8 6 7 8 9 10 11 12 3 4 5 6 7 8 9
9 10 11 12 13 14 15 13 14 15 16 17 18 19 10 11 12 13 14 15 16
16 17 18 19 20 21 22 20 21 22 23 24 25 26 17 18 19 20 21 22 23
23 24 25 26 27 28 29 27 28 29 30 31 24 25 26 27 28 29 30
30 31
Octubre Noviembre Diciembre
do lu ma mi ju vi sá do lu ma mi ju vi sá do lu ma mi ju vi sá
1 2 3 4 5 6 7 1 2 3 4 1 2
8 9 10 11 12 13 14 5 6 7 8 9 10 11 3 4 5 6 7 8 9
15 16 17 18 19 20 21 12 13 14 15 16 17 18 10 11 12 13 14 15 16
22 23 24 25 26 27 28 19 20 21 22 23 24 25 17 18 19 20 21 22 23
29 30 31 26 27 28 29 30 24 25 26 27 28 29 30
31
[y2k@anaconda ~]$
[y2k@anaconda ~]$ cal 2 2000
Febrero 2000
do lu ma mi ju vi sá
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29
[y2k@anaconda ~]$
uname [ -amnrsv ]La orden uname se utiliza para obtener información acerca de nuestro sistema UNIX.
Con ella podemos saber el tipo de máquina que estamos utilizando, la versión del sistema operativo, el tipo de procesador
etc. Las opciones más comunes son las siguientes:
-a Visualiza todo acerca de la máquina que estamos utilizando. Es equivalente a todas las opciones que se muestran a continuación.-m Tipo de hardware utilizado.-n Nombre de nodo-r Actualización del sistema operativo.-s Nombre del sistema.-v Versión del sistema operativo.[y2k@anaconda ~]$ uname -a
FreeBSD anaconda 12.2-STABLE FreeBSD 12.2-STABLE r369150 GENERIC amd64
[y2k@anaconda ~]$ uname -m
amd64
[y2k@anaconda ~]$ uname -n
anaconda
[y2k@anaconda ~]$ uname -r
12.2-STABLE
[y2k@anaconda ~]$ uname -s
FreeBSD
[y2k@anaconda ~]$ uname -v
FreeBSD 12.2-STABLE r369150 GENERIC
[y2k@anaconda ~]$
passwd [usuario]La orden passwd se utiliza para modificar nuestra clave de acceso.
El cambio de palabra clave debe hacerse con frecuencia por razones de seguridad.
Cuando solicitamos un cambio de clave, passwd nos pide siempre nuestra antigua clave de acceso.
El sistema realiza esta operación de esta forma para comprobar nuestra identidad.
De esta forma evita que alguien pueda cambiar nuestra contraseña si abandonamos temporalmente el termina.
De la unica forma que no pide la clave antigua es que el comando sea ejecutado como root.
[y2k@anaconda ~]$ passwd
Changing local password for y2k
Old Password:
New Password:
Retype New Password:
[y2k@anaconda ~]$
Cuado entramos nuestra clave, no mostrará ninguna información, pero si se esta escribiendo en el sistema.
lpr [-m] [-h] [-#n] archivo(s)La orden lpr permite enviar archivos a la impresora que haya por defecto para que sean impresos.
Estos archivos se colocarán en cola de impresión en el orden en que se los pasemos.
La cola de impresión es una cola que mantiene UNIX, y en ella figuran todos los archivos que deben ser impresos.
Las opciones más comunes de lpr son:
-m (mail) Con esta opción, cuando se termina de imprimir el trabajo. lpr envia correo avisándo que podemos ir a recoger el trabajo.-h Se utiliza para eliminar la cabecera del trabajo que se envia por defecto.-#n Sirve para indicar el número de copias que queremos hacer.[y2k@anaconda ~/EJ]$ lpr archivo.txt
[y2k@anaconda ~/EJ]$
Si quieres imprimir diferentes copias del mismo archivo tienes que indicarle a lpr las copias que quieres imprimir.
[y2k@anaconda ~/EJ]$ lpr -#3 archivo.txt
[y2k@anaconda ~/EJ]$
Este comando le indica a lpr que queremos imprimir 3 copias de el archivo.txt
lp [-c] [-m] [-w] [-n] archivo(s)La orden lp sirve para lo mismo que la orden lpr, pero utilizarem