Unix 11 20
Unix 11 20
Unix 11 20
quota -v
muestra las cuotas de disco del usuario.
La opción -v permite ver las cuotas de un disco remoto.
du
(Disk Usage), permite ver el espacio de disco ocupado (en bloques de disco20 ) por el
fichero o directorio suministrado como argumento. La opción -s impide que cuando se
aplique recursividad en un directorio se muestren los subtotales
df
(Disk Free), muestra los sistemas de ficheros de los que dispone el sistema, con las
cantidades totales/usadas/disponibles de cada uno
ln
Permite realizar un enlace (link) entre dos ficheros o directorios. Un enlace puede ser:
• hard link: se puede realizar sólo entre ficheros del mismo sistema de ficheros.
El fichero enlazado apunta a la zona de disco donde se halla el fichero original.
Por tanto, si se elimina el fichero original, el enlace sigue teniendo acceso a dicha
información. Es el enlace por omisión.
Un enlace permite el uso de un fichero en otro directorio distinto del original sin necesi-
dad de copiarlo, con el consiguiente ahorro de espacio.
• other: el resto de los usuarios (excepto el usuario y los usuarios que pertenezcan
al grupo)
– - fichero
– d directorio
– l enlace (link)
– c dispositivo de caracteres (p.e. puerta serie)
– b dispositivo de bloques (p.e. disco duro)
– s socket (conexión de red)
– p tuberı́a (pipe)
Por ejemplo:
chmod 640 *.txt
Permite la lectura y escritura por el usuario, lectura para el grupo y ningún
permiso para el resto, de un conjunto de ficheros que acaban en .txt
• Modo simbólico o literal. Se realiza empleando una cadena (o cadenas separadas
por comas) para especificar los permisos. Esta cadena se compone de:
who operation permission
siendo:
– who : es una combinación de:
∗ u : user
∗ g : group
∗ o : others
∗ a : all (equivalente a ugo)
Si se omite este campo se supone a, con la restricción de no ir en contra de
la máscara de creación (umask).
– operation: es una de las siguientes operaciones:
∗ + : añadir permiso
∗ − : eliminar permiso
∗ = : asignar permiso, el resto de permisos de la misma categorı́a se anu-
lan.
– permission: es una combinación de los caracteres:
∗ r : read
∗ w : write
∗ x : execute
∗ X : ejecución en un directorio o de un fichero que tuviera el permiso de
ejecución en alguna de las clases de usuario.
∗ s : en ejecución usar los permisos de dueño.
∗ t : después de terminar ejecución, el programa continúa en memoria
(cache).
Por ejemplo:
chmod u+x tarea
Permite la ejecución por parte del usuario22 del fichero tarea.
22
un error muy frecuente es la creación de un fichero de órdenes (script file) y olvidar permitir la ejecu-
ción del mismo.
Manual de UNIX Rev 2.4 Jon Tombs & Jorge Chávez 14
4.7 Filtros
Existe un conjunto de órdenes en UNIX que permiten el procesamiento de ficheros de
texto. Se denominan filtros (Unix Filters) porque normalmente se trabaja empleando
redirección recibiendo datos por su stdin24 y retornándolos modificados por su std-
out25 .
awk gawk
Es un procesador de ficheros de texto que permite la manipulación de las lı́neas de una
forma procedural (i.e. con decisiones en función del contenido de la misma).
(Ejemplo)
Supongamos que tenemos un fichero file con dos columnas.
awk "{ print $2, $1 }"file
• c (Create) creación
• x (eXtract) extracción
• r añadir al final
• u añadir aquellos ficheros que no se hallen en el tarfile o que hayan sido modifi-
cados con posterioridad a la versión que aparece.
• v : Verbose
– - el dispositivo es el stdin/stdout
– /dev/rst? SCSI tape interface
26
GNU es un acrónimo de: GNU’s Not UNIX. GNU es el nombre del producto de la Free Software
Foundation, una organización dedicada a la creación de programas compatible con UNIX (y mejorado
respecto a los estándars) y de libre distribución.
Manual de UNIX Rev 2.4 Jon Tombs & Jorge Chávez 16
• Una posibilidad es disponer de una máquina DOS con ftp instalado y acceso a
red. Empleando dicha utilidad se pueden intercambiar ficheros entre un sistema
y el otro.
Manual de UNIX Rev 2.4 Jon Tombs & Jorge Chávez 17
El nombre del fichero file que reside en el fichero puede estar en mayúsculas o
minúsculas.
La opción -a realiza la conversión necesaria entre UNIX y DOS, que se debe
realizar SÓLO en ficheros de texto.
3. La presencia de caracteres con código ASCII por encima del 127 (ASCII extendi-
do) suele plantear problemas. Debido a que en DOS dicho código depende de la
asignación hecha, que a su vez depende del paı́s.
5 Shells
UNIX soporta varios intérpretes de comandos o Shells, que ayudan a que tu inter-
acción con el sistema sea lo más cómoda y amigable posible. La elección de cuál es el
más cómodo es algo personal; en este punto sólo indicaremos los cinco más significa-
tivos:
• ksh : Korn SHell, sintaxis de sh con soporte para uso interactivo. Es el que
establece por omisión AIX.
El fichero de configuración es .profile en caso de login, en caso contrario el
fichero con el nombre de la variable ENV, si existe.
Si queremos cambiar de shell en un momento dado, sólo será necesario que tecleemos
el nombre del mismo y estaremos usando dicho shell. Si queremos usar de forma per-
manente otro shell del que tenemos asignado por omisión29 podemos emplear la orden
chsh que permite realizar esta acción.
En los ficheros de configuración se encuentran las definiciones de las variables de
entorno (enviroment variables) como camino de búsqueda PATH, los “aliases” y otras
configuraciones personales.
Veamos unos caracteres con especial significado para el Shell:
• (comando) hace un fork (nuevo shell hijo para ejecutar un proceso) del comando
delimitado.
• PATH – Tu camino de búsqueda, una lista de directorios separado con ‘:’ para
buscar programas
5.2 Redirección
Cuando el un programa espera que se teclee algo, aquello que el usuario teclea se
conoce como el Standard Input: stdin. Los caracteres que el programa retorna por pan-
talla es lo que se conoce como Standard Output: stdout (o Standard Error: stderr34 ).
El signo < permite que un programa reciba el stdin desde un fichero en vez de la inter-
acción con el usuario. Por ejemplo:
mail admin < file
Invoca el comando mail con argumento (destinatario del mail) admin, siendo el con-
tenido del mensaje el contenido del fichero file en vez del texto que usualmente teclea
el usuario. Más a menudo aparece la necesidad de almacenar en un fichero la salida
de un comando. Para ello se emplea el signo >.
man bash > file
Invoca el comando man con argumento (información deseada) bash pero indicando
que la información debe ser almacenada en el fichero file en vez de ser mostrada por
pantalla.
En otras ocasiones uno desea que la salida de un programa sea la entrada de otro.
Esto se logra empleando los denominados PIPES, para ello se usa el signo |. Este
signo permite que el stdout de un programa sea el stdin del siguiente.
33
En la mayorı́a de los casos se trata de una emulación de vt100
34
Si estos mensajes son de error