Ejercicios sobre redirecciones¶
Sin usar un editor de textos, escriba en el archivo
/tmp/burguillos.txt
el siguiente verso:Rico en inverno y pobre en el estío,
Ídem, pero mostrando por pantalla y, a la vez, guardando en el mencionado archivo.
Añada con una sola orden los dos siguientes versos al anterior archivo:
parezco en mi fortuna el Manzanares, que con agua o sin ella, siempre es río.
Dentro del código de un script necesitamos saber si un módulo del kernel está cargado, y mirando documentación hemos visto que:
# modprobe -n --first-time nombre_modulo [.. información o mensaje de error que no nos interesa ..] # echo $? # El resultado (0/1) está disponible en $?
hace lo que deseamos, ya que la orden funciona (devuelve 0) si el módulo no está cargado y falla (devuelve 1) si ya está cargado o no existe. Para nuestro script sólo tiene interés el resultado y no el mensaje de información (salida estándar) o el de error (salida de errores), así que deseamos escribir la orden de modo que no se vea ningún mensaje. ¿Qué debemos añadir a la orden para que así sea?
Liste paginado el contenido del directorio
/usr/bin
.¿Cuántos usuarios locales tiene definidos mi sistema? ¿Cuántos usuarios en total? No los cuente a mano, que el sistema lo haga por usted.
Nota
Por si aún no sabe consultar usuarios, el archivo
/etc/passwd
contiene la lista de usuarios locales, mientras que la lista de usuarios totales se puede obtener con:$ getent passwd
Pase a maýusculas la lista de usuarios locales.
Observe lo siguiente:
$ tar sjsjsjss tar: Debe especificar una de las opciones `-Acdtrux', '--delete' o '--test-label' Pruebe 'tar --help' o 'tar --usage' para más información.`
Ingénieselas para ver el mensaje de error en mayúsculas.
Convierta el archivo
/tmp/salida.txt
en la salida estándar, ejecute algunas órdenes que impriman algo y vuelve a hacer la pantalla la salida estándar. Finalmente, compruebe que la salida de las órdenes se guardó en el archivo.Defina con una sola orden las variables a, b y c con valores 1, 2 y 3, respectivamente.
Nota
¿Se acuerda de read y que es capaz de almacenar en variables lo que se le proporciona por la entrada estándar?