02- GESTIÓN DE ARCHIVOS Y DIRECTORIOS
Comandos para la gestión de archivos y directorios en ambientes Linux.
TIPOS DE FICHEROS
- --> fichero regular d --> directorio l --> enlace c --> dispositivos especiales de caracteres p --> canales s --> shocket
COMANDOS
PWD --> Print Working Directory. Indica el directorio en el que estamos trabajando.
FILE --> Da informacion del tipo de archivo que hemos seleccionado.
P.E: file /bin/sync
LS --> List directory contents. Lista los elementos en el directorio.
-l --> nos da más información sobre los archivos.
-a --> incluye archivos y directorios ocultos.
-R --> incluye los subdirectorios de cada directorio.
SORT --> Lista ordenadamente del contenido de los elementos de un directorio o una serie de archivos.
P.E: sort 1.txt 2.txt 3.txt
-b --> ignora los espacios en blanco iniciales
-d --> solo tiene en cuenta espacios y alfanumerico
-f --> ignora mayusculas o minusculas
-r --> saca el listado inverso
TREE --> Lista en forma de arbol los directorios y subdirectorios desde el directorio en el que me encuentro, para abajo.
GREP --> Busqueda global. Busca una letra o palabra en el texto que sale por
pantalla. ---------> BUSCAR MAN POR QUE TIENE MIL POSIBILIDADES.
grep [opciones] [patron] [archivo]
-i --> no distingue entre mayusculas y minusculas
-r --> busqueda recursiva (busca en todos los archivos del directorio)
-c --> muestra cuantas lineas coinciden con el patron.
-n --> añade el numero de linea delante.
-v --> muestra por pantalla las lineas del documento que no coinciden con el texto buscado.
-l --> muestra el nombre de los archivos que SI tienen coincidencias.
-L --> muestra el nombre de los archios que NO tienen coincidencias.
-o --> muestra solo las palabras que coinciden, no toda la linea (util si busco varias palabras).
-q --> no muestra nada como salida (util para escribir codigos como el P.E.2)
P.E.1 --> grep -i comando /Desktop/01_Guias/Terminal/00_Guia_Basicos
(muestra por pantalla el texto de las lineas del documento que incluyen la palabra comando).
P.E.2 -->grep -ir comando /Desktop/ && echo SI || echo NO
(muestra por pantalla (SI y las lineas de texto que lo incluyen) si en alguno de los documentos de texto del directorio Desktop aparece la palabra comando (sin tener en cuenta mayusculas o minusculas). En caso contrario imprime (NO).
EGREP --> Busqueda extendida
egrep 'auto|iface|comando' /etc/network/interfaces #me busca las lineas que tienen cada una de las palabras
FIND --> Encontrar. Busca un archivo en el sistema.
find [directorio inicio][opciones][que buscar]
P.E. -->find / -iname "nombre de archivo"
/ --> significa empezar a buscar en la raiz (~ sirve para buscar en home)
-name --> busca por nombre
-iname --> busca por nombre sin tener en cuenta mayus
-user --> busca por usuario propietario
-group --> busca por grupo propietario
-type --> busca por tipo de archivo (según los tipos de este tema)
-amin --> archivos modificados en los ultimos [-amin 3] minutos
-atime --> archivos modificados en los ultimo [-atime 10] dias
-syze --> busca por tamaño
!--> NOT. Busca lo contrario de lo que se pone en la opcion de despues. Un ! por opcion.
LOCATE --> Encontrar ficheros en el sistema. Necesita tener una base de datos actualizada.
updatedb --> actualiza la base de datos del sistema para usarla en locate.
locate [que buscar] --> busca en todo el sistema muy rapido.
-i --> no distingue entre mayusculas y minusculas.
WHEREIS --> Para ver la ruta de un archivo.
-b --> nos muestra solo la ruta de archivos binarios.
-m --> muestra la ruta de los manuales
-s --> muestra la ruta de la fuente.
CD --> Change Directory. Cambia al directorio que seleccionemos
P.E.--> cd Escritorio/ #puedo utilizar tambien rutas absolutas
cd --> me manda directamente a la carpeta de usuario.
cd .. --> me manda a la carpeta del nivel superior.
MKDIR --> Make Directory (crea una carpeta en la ruta seleccionada)
-p --> permite crear un sistema de directorios
-m --> permite añadir permisos al directorio
P.E: mkdir -p test/{test1,test2,test3/{test3.1,test3.2}}/
genera el directorio test con test1,2 y 3 en su interior y test3.1 y 3.2 dentro de test3.
P.E: mkdir -m 550 test
genera el directorio test con permisos de lectura y ejecución para usuario y grupo propietario.
RMDIR --> Remove Directory. Borra un directorio vacio.
-p --> elimina carpetas y subcarpetas.
TOUCH --> Crea un archivo vacio en la ruta seleccionada. Si el archivo ya existe le cambia la fecha de modificacion.
CP --> Copy. Copia el archivo en la ruta absoluta seleccionada.
P.E.--> cp prueba.txt /home/username/Escritorio
DD --> Data Duplicator. Permite copiar de manera secuencial.
Se utiliza mucho en analisis forense. Es muy potente.
dd if=$inputdata of=$outputdata [opciones]
bs= [tamaño de los paquetes]
count= [cantidad de bloques a copiar]
MV --> Move. Mueve un archivo a la ruta absoluta seleccionada.
RM --> Remove. Elimina un archivo en la ruta seleccionada o en la carpeta actual.
-r --> Si queremos borrar una carpeta no vacía.
-f --> fuerza la accion.
-i --> pregunta antes de ejecutar
SPLIT --> Permite dividir un paquete en archivos mas pequeños
-a --> marca la longitud del sufijo
-d --> utiliza sufijos numericos empezando en 0, no alfabeticos
-c --> marca el tamaño maximo de los archivos de salida en BYTES.
-l --> marca el tamaño maximo de los archivos de salida en LINEAS.
P.E: split -d -c 20k imagen.iso
CAT --> Concatenate. Muestra el contenido de un archivo.
-n --> numera los renglones
-b --> numera solo las lineas que no estaban en blanco
-E --> marca el final de las lineas con $ (util para programar)
-s --> muestra solo la primera linea en blanco si hay muchas.
> --> permite dar contenido a un documento. (termina con CTRL+D)
>> --> permite aumentar el contenido de un documento (termina con CTRL+D)
TAC --> Invierte la salida de CAT. (la ultima linea pasa a ser la primera).
NL --> Como cat pero numerando las lineas.
WC --> Da informacion del contenido de un fichero.
N (Lineas) N (palabras) N (caracteres)
-W --> cuenta solo las lineas.
DIFF --> Busca diferencias entre dos archivos.
P.E: diff 1.txt 2.txt
-b --> No hace caso de las diferencias por espacio en blanco
-B --> No hace caso de las diferencias por lineas en blanco
-q --> Solo informa de si difieren o no, sin mostrar los cambios
-r --> Recursivo en directorios. Compara dos ficheros cualesquiera
-y --> Emplea el formato de lado a lado.
UNIQ --> Muestra las lineas no repetidas de un conjunto de archivos.
-c --> pone antes de cada linea el numero de coincidencias
-d --> muestra las lineas repetidas solo una por duplicidad
-D --> muestra TODAS las lineas duplicadas
-i --> ignora diferencia entre mayus y minus
-u --> muestra solo las lineas unicas
COLUMN --> Pone el contenido por columnas.
-t --> utiliza los espacios como separadores
-s --> Se utiliza con -t para utilizar otro separador que no sea el espacio
P.E: column -t -s ":"
CUT --> elimina secciones de cada fila de un fichero ------> tiene muchas opciones. Ver man.
-c [a,b,c] --> elimina solo las letras a, b y c.
-d " " --> marca el delimitador entre campos en un tabla (en este caso el espacio)
solo puede ser un unico caracter. Sirve para utilizar la opcion -f.
-f [3] --> coge solo la tercera columna (los espacios en blanco se consideran columnas en las tablas
en este caso)
P.E: cut -d " " -f 3
TEE --> lee de entrada estandar y escribe a salida estandar y fichero.
En resumen: saca el resultado por pantalla y por fichero.
P.E: ps aux | tee ps.txt #sale por pantalla y por fichero ps.txt
BASENAME --> Muestra nombre del archivo especificado en una ruta.
STAT --> Muestra informacion de un fichero. Sin opciones pone fechas de acceso, modificacion y cambio.
stat -c%U test.txt -- Usuario propietario
-c%u --> PID usuario propietario
-c%G --> Grupo propietario
-c%g --> PID grupo propietario
-c%n --> nombre completo del archivo
-c%F --> tipo de fichero
-c%A --> permisos
-c%a --> permisos en octal
-c%x --> ultima fecha de acceso
-c%y --> ultima fecha de modificacion (cambian las caracteristicas P.E: permisos)
-c%z --> ultima fecha de cambio (cambia el contenido)
MORE --> Como cat pero va mostrando poco a poco el texto. Cat mejorado.
enter --> muestra la siguiente linea
space --> muestra la siguiente pagina
d --> se mueve 11 lineas hacia delante
5s --> se mueve 5 lineas hacia delante
5f --> se mueve 5 lineas hacia detras
v --> abre el editor vim en la posicion del cursor
h --> muestra ayuda
q --> lo quita
LESS --> Muy parecido al more, pero se mueve el contenido con los cursores.
HEAD --> Muestra las primeras lineas de un fichero.
TAIL --> Muestra las ultimas lineas de un fichero.
LN --> Link. Crea enlaces entre archivos.
-s --> crea enlaces simbólicos
SED --> Editor de flujos y ficheros de forma no interactiva.
Permite modificar el contenido de las lineas de un fichero en base a comandos.
-e --> añade un script al comando
-f --> añade el script del archivo al comando
s --> sustituir
sed 's/a/A/g' hola.txt #sustituye(s) todas(g) las (a) por A.
sed '1,10s/a/A/g' hola.txt #solo hace la sustitución en las filas de 1 al 10.
d --> eliminar
sed '1,5d' hola.txt #Elimina las filas de la 1 a la 5.
TR --> filtro de sustitucion.
-s --> permite cambiar un conjunto de caracteres iguales por uno igual.
Sirve para convertir un tabulador en un espacio
tr -s " " #Sustituye conjuntos de espacios en un espacio
-c --> Sustituye en la salida todos los caracteres excepto los indicados en el argumento1 por los especificados en el argumento2.
tr -c '[a-f][A-F][1-5]' x <> test.txt #Sustituye todo menos los tres conjuntos del arg1 por la letra x. Toma como entrada el archivo test.txt y como salida el mismo (de ahí ese <>).
-d --> Suprime los caracteres asignados en el argumento-1.
echo "Hola a todos" | tr -d o #Elimina la letra o en el output.
PASTE --> Concatena el contenido de varios archivos añadiendolos tabulados.
-d --> cambia el separador P.E: -d "," #en vez de tabulador pone comas.
-s --> concatena el contenido de varios archivos poniendo el contenido de cada uno en una fila.
EXPAND --> Modifica un tabulador convirtiendolo en 8 espacios.
-t --> marca en cuantos espacios se convierte el tabulador
HEXDUMP --> transforma un archivo a hexadecimal
-C --> Para sacar el hexadecimal y el ASCII (legible).
OD --> transforma un archivo a octal
ICONV --> permite convertir el codeset de un fichero.
--list --> lista los codeset disponibles.
P.E: iconv -f UTF-8 -t ISO-8888 fichero.tx
NANO --> Editor de texto. Permite editar archivos de texto desde la terminal.
VIM --> Editor de texto de linea de comandos. Muy potente pero más complicado de utilizar que el nano.
GEDIT --> Editor de texto grafico. Tipo bloc de notas. (Cada distribución de Linux tiene uno por defecto, éste es el de Debian).
Última actualización
¿Te fue útil?