Etiquetas

C (31) Cpp (28) Linux (14) asm (8) Telegram (5) bot (5) libreria (5) Algoritmo (3) Errores comunes (3) python (3) Opengl (2) kali (2) Android (1) Snippet (1) nano (1) recursividad (1)

lunes, 13 de noviembre de 2023

Búsqueda y Manejo de Archivos

algunas caracteristicas mas incluyen la agilizacion de tareas: ls a* busca todos los archivos que empiecen con a y * significa que incluira cualquier cosa que venga despues. alinux aconux axenax.ls no puede leer los archivos que empiecen con . a m3nos que se use la opcion -a. ls -la

total 43

drwx------. 2 root root 3452 Apr 10 02:50 .
drwx------. 6 root root 3452 Apr  6 04:54 ..
-rw-------. 1 root root    7 Apr 10 02:50 .acl
-rw-------. 1 root root    6 Apr 10 02:47 aconux
-rw-------. 1 root root    5 Apr 10 02:46 alinux
-rw-------. 1 root root    7 Apr 10 02:47 axenax

sin -a

ls -l

total 32
-rw-------. 1 root root    6 Apr 10 02:47 aconux
-rw-------. 1 root root    5 Apr 10 02:46 alinux
-rw-------. 1 root root    7 Apr 10 02:47 axenax

ls /etc/*conf ver los archivos que terminan con conf
/etc/GeoIP.conf            /etc/nftables.conf
/etc/adduser.conf          /etc/nikto.conf
/etc/ca-certificates.conf  /etc/nsswitch.conf
/etc/debconf.conf          /etc/ntp.conf
/etc/deluser.conf          /etc/pam.conf
/etc/dns2tcpd.conf         /etc/proxychains4.conf
/etc/dnsmasq.conf          /etc/redsocks.conf
/etc/e2scrub.conf          /etc/request-key.conf
/etc/fuse.conf             /etc/resolv.conf
/etc/gai.conf              /etc/rsyslog.conf
/etc/host.conf             /etc/sensors3.conf
/etc/idmapd.conf           /etc/sestatus.conf
/etc/inxi.conf             /etc/smi.conf
/etc/ipsec.conf            /etc/strongswan.conf
/etc/ld.so.conf            /etc/sudo.conf
/etc/libao.conf            /etc/sudo_logsrvd.conf
/etc/libaudit.conf         /etc/sysctl.conf
/etc/logrotate.conf        /etc/ucf.conf
/etc/miredo.conf           /etc/updatedb.conf
/etc/mke2fs.conf           /etc/usb_modeswitch.conf
/etc/nfs.conf              /etc/xattr.conf
/etc/dconf:db           /etc/resolvconf:update.d

ademas de * puede ser usado ? pero este ultimo funciona solo con un caracter. son llamados comodines

ls l[abdcio]st.sh busca un archivo que empiece con l,seguido de a,b,d,c,i,o y luego st.
ls [clst]* busca los archivos que empiecen con c,l,s,t y luego cualquier caracter.
ls [clst][io]?t* busca primero c,l,s,t y luego i,o
rm *tar* $ ls elimina cualquier atchivo tar y tambien los tar.bz2,tar.gz,etc.

ls users-[0-9][a-zA-Z0-9][0-9]* busca primero users-,luego numero del 0 al 9,luego minusculas y mayusculas y luego 0-9 de nuevo 2 veces,luego cualquier caracter

ls users-[0-9][!0-9][a-zA-Z]* el ! niega ese set de caracteres.
[aeiouAEIOU] buscar vocales
[A-Z] todas las mayusculas
[0-9] en base 10
[^A-Z] excluye las letras mayusculas. es lo mismo que [!A-Z].

USO DE TR

cat wonderfulfile
This is a very wonderful file

cat wonderfulfile | tr 'a-z' 'A-Z'
THIS IS A VERY WONDERFUL FILE

cat wonderfulfile | tr aeiouAEIOU '*'
Th*s *s * v*ry w*nd*rf*l f*l*.

cat wonderfulfile | tr -d aeiouAEIOU
Ths s  vry wndrfl fl

tr a-z A-Z < employee.txt

cambia minusculas a mayusculas

USO DE GREP

grep pancake randomlines
busca pancake en el archivo randomlines

buscar lineas terminadas en !
grep '\!$' randomlines

grep -ri panda /root
busca panda en el directorio y en los subdirectorios de root.

grep "^Nov 10" messages.1
busca cualquier linea que empiece con Nov 10 con ^

grep "terminating.$" messages
busca cualquier linea que termine en terminating con $

USO DE TEE

copia la entrada como cat y devuelve la salida,pero simultaneamente copia la entrada a uno o mas archivos generalmente, esta entremedio de 2 comandos haciendo un archivo que sera pasado por una tuberia

who | tee original_who | sort

USO DE AWK

imprimir la 2da y 4ta palabra de cada linea con awk
awk '{print $2, $4}' myfile

imprimir las lineas menores a 60 caracteres
awk 'length < 60 {print}' myfile

imprimir un archivo reemplazando me con YOU con sed
sed 's/me/YOU/g' myfile

imprime el archivo sin las primeras 10 lineas
sed '1,10d' myfile

SUBSTITUYENDO TEXTO CON m4

cat substitutions
My name is NAME and I am AGE years old
ifelse(QUOTE,yes,Learn Linux today!)
m4 -DNAME=Sandy -DAGE=25 -DQUOTE=yes substitutions

sustituyendo texto con sed
sed 's/Linux/Linux-Unix/' thegeekstuff.txt

cambia Linux por Linux-Unix en thegeekstuff.txt
sed 's/Linux/Linux-Unix/2' thegeekstuff.txt

cambia linux por linux-unix 2 veces
sed 's/Linux/Linux-Unix/g' thegeekstuff.txt

cambia linux por linux-unix en todo el archivo
sed -e 's/#.*//;/^$/d'  thegeekstuff.txt

eliminar comentarios y lineas en blanco usando ;
comando join:mezcla los numeros de lineas de dos archivos

comando xargs:redirige la salida de un comando como argumento para otro
cat url-list.txt | xargs wget –c

la salida de cat es usada por wget
find ~ -name ‘*.log’ -print0 | xargs -0 rm -f

los archivos .log que va encontrando los va pasando
a rm -f

find /etc -name "*.conf" | xargs ls –l
va viendo los permisos de los archivos .conf con ls -l que va encontrando con find

USO DE SORT

sort -t . -k 1,1n -k 2,2n -k 3,3n -k 4,4n /etc/host
ordena /etc/host por ip

 

No hay comentarios.:

Publicar un comentario