8.3.3.11. Otras órdenes útiles

Además de todas las órdenes que hemos visto hasta ahora, existe otras cuya finalidad vamos a ver a continuación:

 

  • uname: Muestra información como el tipo de sistema operativo, versión, tipo de ordenador desde el que nos conectamos, etc.
  • clear: Con esta orden, limpiamos la pantalla en modo comando, es decir, la consola. No tiene argumentos.
  • date: Presenta en pantalla el día y la hora que tiene el equipo en ese momento. Muestra, de izquierda a derecha, el día de la semana, mes, día del mes, hora, meridiano y año.
Con este comando, también podemos ajustar la hora del sistema. Si, por ejemplo, son las 18:45 del día 25 de diciembre, ejecutaremos en la consola $ date 12251845, es decir primero el mes, luego el día, seguido de la hora y los minutos.
  • cal/ncal: Sirven para mostrar el calendario del sistema. Nos permiten ver calendarios completos de otros años o calendarios de un mes determitado, según los parámetros que le pasemos, así, la orden $ date 3 2010, nos mostrará el calendario del mes de marzo del año 2010. Si no le pasamos ningún argumento, nos mostrará el mes actual, marcando el día en el que estamos.
  • who: Muestra por pantalla una línea por cada usuario que en ese momento está conectado al sistema. Muestra, de izquierda a derecha, el nombre de presentación del usuario, el número de terminal y la fecha y hora de presentación. Una variedad de este comando, es who i am o who am i, que muestra solamente información referente al usuario conectado,
  • passwd: Esta orden permite al usuario cambiar o asignar una contraseña, siempre que el administrador lo permita. Esta orden se introduce sin parámetros o modificadores, $ passwd, y tras ejecutarla, pedirá la nueva contraseña si no existía anteriormente, o pedirá confirmación de la antigua. Si la contraseña no cumpliera los mínimos de seguridad (por ser demasiado corta, por ejemplo), el sistema avisaría, y tras un intento limitado, rechazaría la operación.
También podemos eliminar una contraseña de una cuenta mediante la orden $ passwd -d nombreusuario, pero debemos ser administradores.
  • logname: Esta orden tiene como misión mostrar el contenido de la variable logname, la cual contiene el nombre del usuario conectado al sistema. No requiere ningún parámetro.
  • id: Muestra el número de identificación y el grupo al que pertenece el usuario que le pasamos por parámetro. Así, para conocer el identificador y el grupo al que pertenece alumno, ejecutaríamos $ id alumno.
  • Concatenación de órdenes (| o barra vertical): Linux nos permite concatenar ordenes mediante este símbolo. Básicamente, lo que hace es convertir la salida de un comando en la entrada de otro.

Por ejemplo, si ejecutamos la orden $ cat /etc/mtools.conf | grep disk, estamos haciendo que se vuelque el contenido del fichero mtools.conf y nos resalte la palabra "disk" en éste. Esto es porque la tubería coge la salida que produce la orden cat y se la pasa a grep como entrada.

  • Redirección de salida (>): Lo que conseguimos con esto es redirigir la salida de un comando o programa para que en lugar de salir por pantalla (como hemos estado viendo hasta ahora), se envíe a un fichero. Por ejemplo, la orden $ cal 2011 > calendario.txt, crea un fichero en el directorio actual llamado calendario.txt que contiene la salida que ha producido la orden cal.
  • umask: Este comando es la abreviatura de user file-creation mode mask, y sirve para establecer los permisos por defecto que tendrán los nuevos ficheros y directorios que creemos.
Quizás lo más confuso de umask sea el modo octal que se utiliza para asignar las mascaras, la forma más sencilla es la siguiente, tenemos que restar el valor de los permisos que deseamos asignar, al valor de la mascara, la cual es 666 para archivos y 777 para directorios:

Directorios:

Valor de la máscara:777 (111 111 111)
Permisos que queremos asignar:755 (111 101 101)
Valor para umask para directorios: 022 (111 111 111 - 111 101 101 = 000 010 010 = 022)

Archivos:

Valor de la máscara:666 (110 110 110)
Permisos que queremos asignar:644 (110 100 100)
Valor para umask para directorios: 022 (110 110 110 - 110 100 100 = 000 010 010 = 022)

 

Icono IDevice Actividades

Actividad 1: Muestra por pantalla la información relativa al sistema operativo y tu equipo.

Actividad 2: Muestra por pantalla el contenido de /etc/mtools.conf con el comando cat. Tras haberlo hecho, limpia la consola.

Actividad 3: ¿Qué comando ejecutarías para que la fecha del equipo fuera 15 de Octubre, a las 12:30?

Actividad 4: Si no el usuario con el que estás conectado al equipo no tiene contraseña, crea una. Si ya tenías una, modifícala. La nueva será alumno.2011. Tras esto, vuelve a cambiarla por la que tenías antes.

Actividad 5: Queremos saber las líneas en las que aparece la palabra "man" dentro del manual de man. Además, queremos saber qué número de línea es. ¿Cómo lo harías?

Actividad 6: A Pedro le han dicho que para mañana tiene que saberse "de pe a pa" el contenido del fichero ntf.conf del directorio /etc. El pobre, para estudiárselo mejor, quiere meterlo en un fichero de texto llamando mifichero.txt para aprendérselo, pero además quiere que dentro de ese fichero, se muestre el contenido por páginas a doble espacio entre líneas y con la cabecera "Estudiar" en cada una. ¿Cómo lo puede hacer?

Una vez hecho, abre mifichero.txt con gedit desde consola para comprobar que lo has hecho bien.

Actividad 7: Queremos asignar por defecto los permisos 664 a los nuevos ficheros. ¿Qué máscara tendré que utilizar? Ejecuta la orden adecuada, luego crea un fichero y comprueba si los permisos que asigna por defecto son correctos.

Actividad 8: ¿Con qué permisos se crearán los directorios por defecto si ejecuto $ umask 166? ¿Y los ficheros?