Aqui algunos ejemplos practicos del uso para el comando find, sumamente util si eres un administrador de sistemas y quieres darle un chequeo periodicamente a tu server de los archivos que por ahi se encuentran. Si hay algun error en alguno de los ejemplos, hacermelo saber para corregirlo a la brevedad.
#======
# find
#======
-atime n archivo accedido hace n dias
-mtime n archivo modificado hace n dias
-size n n=512-byte blocks long
-type c f=plain file d=directory
-user usr archivos cuyo propietario sea usr
-name nam archivos cuyo nombre sea nam
-group grp archivos cuyo grupo propietario sea grp
-perm permisos de un archivo
-exec ejecutar un comando
-ok pregunta antes de ejecutar un comando
-prune no ingresa dentro de los directorios encontrados
######################################################
s second
m minute (60 seconds)
h hour (60 minutes)
d day (24 hours)
w week (7 days)
Any number of units may be combined in one -atime argument, for
example, ``-atime -1h30m
######################################################
# Ubica archivo cuyo nombre es 'core' desde la raiz
find / -name core
# Busca en el directorio activo documentos donde sea propietario operador
find . -user operador
# Archivos q hayan sido accedido hace mas de 2 dias
find /home/noc -atime +2
# Archivo accedidos hace mas de 2 dias y modificado hace menos de 7 dias
find /home +atime +2 -mtime -7
# Indica el tipo de archivos hay en el directorio actual
find . -type f -exec file {} \;
# Busca archivos en '/home/noc/test' cuyo nombre es prueba
find /home/noc/test -name prueba
#Muestra todos los archivos menos el de nombre 'prueba'
find /home/noc/test \! -name prueba
# Para borrar archivos con cierto nombre (2 formas)
find . -type f -name \*core\* -exec ls -l {} \; -exec rm -f {} \;
find . -type f -name \*core\* -print | xargs rm -f
# Muestra archivos (no directorios) modificados hace menos de 2 dias y los lista
find /home -type f -mtime -2 -exec ls -l {} \;
# Muestra archivos en el directorio actual q hayan sido accedidos hace - de 3 dias O modifacado hace + de 7 dias y lista el resultado.
ind . -type f \( -atime -3 -o -mtime +7 \) -exec ls -l {} \;
# Muestra todos los archivos mmc exepto prueba.mmc en el directorio actual
find . \! -name prueba.mmc -name \*.mmc
# Ubica archivos de mas de 500MB accedidos despues de 2 meses
find /usr/i -size +1000 -atime +60 -print
# Busca archivos Sticky , SUID y SGID desde la raiz
find / -type d \( -perm 1777 -o -perm 2777 -o -perm 4777 \)
# Hace lo anterior y lo compara con un archvivo previamente creado, permite ver si hay un SUID , SGUID o Sticky nuevo.
find . -type d \( -perm 1777 -o -perm 2777 -o -perm 4777 \) | diff - /home/operador/files.secure
# Cambia el propietario y grupo propietario de operador a noc
find /home/noc/ -user operador -print -exec chgrp noc {} \; -exec chown noc {} \;
# Cambia usuario y grupo a operador excepto el archivo '.shrc'
find . -user noc \! -name .shrc -exec chgrp operador {} \; -exec chown operador {} \;
# Otra forma de hacer lo mismo
find . -print | xargs chown noc
===================================================================
ON FILE ON DIRECTORY
===================================================================
r view file content to use ls
w alter file content alter content (delete file)
x run executable file make it current directoy (use cd)
No hay comentarios:
Publicar un comentario