Publicado el 24 de Agosto del 2018
1.480 visualizaciones desde el 24 de Agosto del 2018
215,0 KB
63 paginas
Creado hace 13a (05/10/2011)
TRABAJO CON FICHEROS
Varios
mc
Explorador de archivos que incluye su propio editor,mcedit.
mcedit
Editor de texto incluído en mc.
ls
Lista los ficheros de un directorio concreto.
1. ls -l
Lista también las propiedades y atributos.
2. ls -la
Lista ficheros incluidos los ocultos de sistema.
3. ls -la | more
Lista los ficheros de un directorio de forma paginada.
4. ls -lh
Lista ficheros especificando la unidad de tamaño (Kilobyte, Megabyte, Gigabyte).
5. ls -l | grep ^d
Lista sólo los directorios
1. ls -d */
Este último comando también lista solamente directorios: sin concatenar comandos,
de una forma más sencilla y respetando el color definido que se tiene en Bash para
los directorios.
cat -n fichero
Muestra el contenido de un fichero.(-n lo numera)
pr -t fichero
Muestra el contenido de un fichero de manera formateada.Ver imprimiendo.
cat fichero | less
cat fichero | lmore
more fichero
less fichero
Muestra el contenido de un fichero de forma paginada.
zcat fichero
zmore fichero
zless fichero
Muestra el contenido de un fichero comprimido (.gz)
echo cadena
echo nos muestra en pantalla,el texto que le siga.
grep \'cadena\' archivo
Muestra las líneas del archivo que contienen la cadena.
stat fichero
Muestra el estado de un fichero.
1. stat -f fichero
Muestra el estado del sistema de ficheros.
file fichero
Muestra de qué tipo es un fichero.
tail archivo
Muestra las últimas líneas de un archivo, 10 por defecto.
1. tail -n 12 archivo
Muestra las 12 últimas líneas del archivo.
2. tail -f archivo
Muestra las últimas líneas del archivo, actualizándolo a medida que se van añadiendo. Útil
para controlar logs.
head archivo
Muestra las primeras líneas de un archivo, 10 por defecto. Admite opción -n igual que el comando
tail.
find /usr -name lilo -print
Busca todos los ficheros con nombre lilo en /usr.
find /home/paco -name *.jpg -print
---------- ---------- -----
| | |
V V `---->muestra la ruta completa
del fichero encontrado
ruta patrón de búsqueda
Busca todas las imágenes .jpg en /home/paco.
find -maxdepth 1 -regex ".*/[^./]*" -type f
Lista ficheros sin punto en el directoria actual.
whereis ejecutable
Busca ejecutables(ejemplo: whereis find)
type comando
Muestra la ubicación del comando indicado.
Si es un comando interno del shell mostrará algo así como:comando is a shell builtin.
pwd
Visualiza el directorio actual.
history
Muestra el listado de comandos usados por el usuario (~/.bash_history)
fc -l
Muestra el listado de los últimos comandos ejecutados.
eject cdrom0
Abre la bandeja del cdrom.
1. eject -t cdrom0
Cierra la bandeja del cdrom.
cd nom_directorio
Cambia de directorio
1. cd ..
Vuelves al anterior.
2. cd .mozilla
Entras al de mozilla.(por la puerta grande)
3. cd ./.mozilla
Entras al de mozilla (indicando la ruta relativa)
4. cd /home/paco/.mozilla
Entras al de mozilla.(indicando la ruta completa)
cp -dpR fichero1 ruta_fichero2
Realiza una copia del fichero1 a ruta_fichero2,cambiándole el nombre.
cp -dpR fichero1 /directorio
Copia fichero1 a directorio,conservando fichero1 el nombre.
1. -R
Copia un directorio recursivamente,salvo los ficheros especiales.
2. -p
Copia preservando permisos,propietario,grupos y fechas.
3. -d
Conserva los enlaces simbólicos como tales y preserva las relaciones de los duros.
4. -a
Lo mismo que -dpR .
mv ruta_fichero1 ruta_fichero2
Mueve y/o renombra ficheros o directorios.
mkdir nom_directorio
Crea un directorio.
rmdir nom_directorio
Elimina un directorio(tiene que estar vacío).
rm archivo
Elimina archivos .
1. rm -r directorio
Borra los ficheros de un directorio recursivamente.Quietorrrrrrr...
2. rm *.jpg
Borra todos los ficheros .jpg del directorio actual.
ln ruta_fichero ruta_enlace
Crea un enlace duro (con el mismo inodo,es decir mismo fichero con distintos nombres)
ln -s ruta_directorio ruta_enlace
Crea un enlace simbólico (con diferente inodo,es decir se crea un nuevo fichero que apunta
al \"apuntado\",permitiendo enlazar con directorios y con ficheros de otro sistema de archivos)
diff [opciones] fichero1 fichero2
Compara ficheros.
1. diff -w fichero1 fichero2
Descarta espacio en blanco cuando compara líneas.
2. diff -q fichero1 fichero2
Informa sólo de si los ficheros difieren,no de los detalles de las diferencias.
3. diff -y fichero1 fichero2
Muestra la salida a dos columnas.
join [opciones] fichero1 fichero2
Muestra las líneas coincidentes entre fichero1 y fichero2.
wc fichero
Muestra el nº de palabras,líneas y caracteres de un archivo.
wc -c fichero
Muestra el tamaño en bytes de un fichero.
touch [-am][-t] fichero
Cambia las fechas de acceso (-a) y/o modificación (-m) de un archivo.
1. touch -am fichero
A la fecha actual.Si no existiese el fichero,se crearía.
2. touch -am -t 0604031433.30 fich
AAMMDDhhmm.ss ------- Si no se especifican los
segundos,tomaría 0 como valor.
A la fecha especificada.Si no existiese el fichero,se crearía.
3. touch fichero
Usado sin opciones crearía un fichero con la fecha actual.
split -b 1445640 mozart.ogg mozart
---------- -------
| V
| nombre elegido para las partes,por defecto x
V
tamaño en bytes de cada parte
Partir un archivo
cat mozart.* > mozart.ogg
Unir las distintas partes de un fichero cortado con split.
chown [-R] usuario fichero
Cambia el propietario de un fichero o directorio.
chgrp [-R] grupo fichero
Cambia el grupo de un fichero o directorio.
chmod [-R][ugo][+/- rwxs] fichero
Cambia los permisos de acceso de un fichero
+: da permisos -: quita permisos
u: propietario R: recursivo
g: grupo r: lectura ejemplo: chmod +x fichero, es lo mismo que:
chmod a+x fichero
o: otros w: escritura explicación: a es la opción por defecto.
a: todos x: ejecución
s: los atributos suid y sgid,otorgan a un \"fichero\" los permisos
de su dueño o grupo respectivamente,cada vez que se ejecute,sea
quien sea el que lo ejecute.
Ejemplo: chmod +s /usr/bin/cdrecord
Cómo afectan los permisos a los directorios:
r permite ver su contenido(no el de sus ficheros)
w permite añadir o eliminar ficheros (no modificarlos)
x permite acceder al directorio.
Método absoluto de determinar los permisos: chmod 760 fichero
explicación: dueño grupo otros
------------ ----- ----- -----
asci r w x r w - - - -
binario 1 1 1 1 1 0 0 0 0
octal 7 6 0
paso de asci r w x r w - - - - activar=1
a binario 1 1 1 1 1 0 0 0 0 desactivar=0
paso de 1 1 1 1 1 0 0 0 0 r activado=4
binario 4+2+1 4+2+0 0+0+0 w activado=2
a octal 7 6 0 x activado=1
umask nnn
Establece qué permisos serán deshabilitados para los archivos nuevos.
umask
Muestra la configuración actual de umask(normalmente 022)
umask 000
Deshabilita ninguno,es decir los activa todos.
Atención,que la cosa manda huevos:
umask 0 2 2 = chmod 7 5 5
umask 0 0 0 = chmod 7 7 7 |
umask --- -w- -w- = chmod rwx r-x r-x
umask --- --- --- = chmod rwx r-x r-x
Una manera rápida de averiguar los permisos partiendo de umask es aplicando la siguiente resta:
777-022=755 para el primer caso y 777-000=777 para el segundo.
Cuando umask es 022,los permisos normales de un directorio son 755 (rwx r-x r-x) producto de la
resta 777-022.Sin embargo los de un fichero son 644 (rw- r-- r--).Ésto es así porque se considera
que lo normal para un fichero es que no sea ejecutable de manera que la resta para averiguar los
permisos de un fichero sería 666-022=644
Si escribo en una consola umask 000 y a continuación \"mkdir nuevodirectorio\",éste tendrá todos
los pemisos:
rwx rwx rwx (777) pero ¿y los ficheros que creemos dentro de dicho directorio? pues éstos
tendrán los permisos :
rw- rw- rw- (666) resultado de la resta 666-000=666
¿Os aclarais?... yo tamp
Para que la máscara de permisos permanezca de una sesión a otra tienes que ponerla en el
.bash_profile de tu home.
Imprimiendo
lpr fichero
Añade un documento a la cola de impresión.
lpr -P "nombre_impresora" fichero
Se especifica la impresora a la que queremos mandar el fichero a imprimir
lpr -#3 fichero
Realiza 3 copias del fichero.
lpr -P "hp" -o page-set=odd fichero
Imprime sólo las páginas impares del fichero que hemos mandado a la impresora "hp"
lpr -o page-ranges=7-49 fichero
Imprime el intervalo de páginas 7-49 del documento
lpr fichero
Añade un documento a la cola de impresión.
lpq
Muestra los documentos en cola.
lprm
Cancela la impresión del documento activo.
lprm 3
Cancela la impresión del trabajo nº 3.
pr +2 l70 -w 80 -h \"Comandos\" fichero
Preprocesador de impresión para formatear un archivo de texto.
-l70
Establece la longitud de la página de 70 lineas (66 por defecto).
-w 80
Establece el ancho de linea en 80 caracteres()72 por defecto).
-h \"Comandos\"
Establece \"Comandos\" como cabecera de cada página.
+2
Imprime a partir de la página 2.
-t
No imprimiría cabeceras ni pies de página.
pr l70 -d comandos.txt | lpr
Una vez formateado el documento lo manda a la cola.
Nano
nano fichero
Leer,crear,editar un fichero de texto.
M = Esc/Alt | | Ctrl + g ----------- Invocar el menú de ayuda.
Ctrl + x ----------- Salir de nano.
Ctrl + o ----------- Escribir el fichero actual a disco.
Ctrl + r ----------- Insertar otro fichero en el actual.
Ctrl + w ----------- Buscar un texto en el editor.
Ctrl + y ----------- Moverse a la página anterior.
Ctrl + v ----------- Moverse a la página siguiente.
Ctrl + k ----------- Cortar la línea actual y guardarla en el
cutbuffer.
Ctrl + u ----------- Pegar el cutbuffer en la línea actual.
Ctrl + l ----------- Redibujar la pantalla actual.
Ct
Comentarios de: Comandos Linux (0)
No hay comentarios