texto recursivo por ejemplos consola comandos comando buscar basicos archivos archivo linux find tail

recursivo - Comando de búsqueda de Linux, encuentre los 10 últimos archivos de forma recursiva independientemente del intervalo de tiempo



comandos basicos de linux y ejemplos (2)

¿Qué he intentado hasta ahora ...

Mando:

find . -type f -ctime -3 | tail -n 5

Resultado:

./Mobilni Telefoni/01. Box Update/05. DC Unlocker Client/dc-unlocker_client-1.00.0857.exe ./Mobilni Telefoni/01. Box Update/39. Z3X Box/01. Update/01. Samsung Box/SamsungTool_12.4.exe ./Mobilni Telefoni/10. Nokia/1. SRPSKI HRVATSKI JEZICI/BB5/3xx_Series/Asha 300/06.97/rm781_06.97_ppm_d.rar ./GPS Navigacije/01. Garmin/03. Garmin Other/garmin_kgen_15.exe ./GPS Navigacije/01. Garmin/03. Garmin Other/test.txt

Esta salida está bien, no funciona bien si pongo un período de tiempo más amplio. (aviso que uso -ctime y no -mtime porque algunos archivos cargados se modifican hace unos años)

El problema es que los archivos se pueden cargar una vez al mes o una vez al año, y aún necesito obtener los 10 archivos más recientes, independientemente del período de tiempo.

Si no se puede hacer, ¿la salida solo limita la salida, o de alguna manera solo obtiene el número especificado sin un gran impacto en el rendimiento de una gran cantidad de archivos?

Al usar el comando de una respuesta en SO, pude obtener los archivos pero faltaban algunos archivos ...

find . -type f -printf ''%T@ %p/n'' | sort -n | tail -10 | cut -f2- -d" "

Resultado:

./Mobilni Telefoni/11. Samsung/1. FLASH FILES/1. SRPSKI HRVATSKI JEZICI/E/E2330/E2330_OXFKE2.rar ./Mobilni Telefoni/11. Samsung/1. FLASH FILES/1. SRPSKI HRVATSKI JEZICI/E/E2330/FlashTool_E2_R6.zip ./Mobilni Telefoni/11. Samsung/1. FLASH FILES/1. SRPSKI HRVATSKI JEZICI/E/E210/E210_XFGH2.rar ./Mobilni Telefoni/05. iPhone/07. iFaith/iFaith-v1.4.1_windows-final.zip ./Mobilni Telefoni/05. iPhone/09. iPhone Browser/SetupiPhoneBrowser.1.93.exe ./Mobilni Telefoni/05. iPhone/10. iPhone_PC_Suite/iPhone_PC_Suite_Eng_v0.2.1.rar ./Mobilni Telefoni/05. iPhone/10. iPhone_PC_Suite/iPhone_PC_Suite_Ok.rar ./test ./Mobilni Telefoni/11. Samsung/1. FLASH FILES/1. SRPSKI HRVATSKI JEZICI/E/E2152/E2152_XXJH4_OXFJI2.zip.filepart ./GPS Navigacije/01. Garmin/03. Garmin Other/test.txt

garmin_kgen_15.exe archivo garmin_kgen_15.exe porque se creó en 2008, pero se cargó en las últimas 24 horas.


Más fácil:

filename=$(ls -t . | head -10)


Me dijeron que esta es la solución:

find . -type f -printf "%C@ %p/n" | sort -rn | head -n 10

El punto clave es el marcador de posición printf %C@ , que es el de -ctime . Lo encontré leyendo al man find .

Resultado:

1336992789.0000000000 ./Mobilni Telefoni/05. iPhone/03. iPhone 4G Firmware/5.1.1/iPhone3,1_5.1.1_9B206_Restore.ipsw.filepart 1336928538.0000000000 ./GPS Navigacije/01. Garmin/03. Garmin Other/test.txt 1336922295.0000000000 ./GPS Navigacije/01. Garmin/03. Garmin Other/garmin_kgen_15.exe 1336868365.0000000000 ./Mobilni Telefoni/11. Samsung/1. FLASH FILES/1. SRPSKI HRVATSKI JEZICI/E/E2152/E2152_XXJH4_OXFJI2.zip.filepart 1336867426.0000000000 ./Mobilni Telefoni/11. Samsung/1. FLASH FILES/1. SRPSKI HRVATSKI JEZICI/E/E210/E210_XFGH2.rar 1336866301.0000000000 ./Mobilni Telefoni/11. Samsung/1. FLASH FILES/1. SRPSKI HRVATSKI JEZICI/E/E2330/FlashTool_E2_R6.zip 1336865921.0000000000 ./Mobilni Telefoni/11. Samsung/1. FLASH FILES/1. SRPSKI HRVATSKI JEZICI/E/E2330/E2330_OXFKE2.rar 1336865409.0000000000 ./Mobilni Telefoni/11. Samsung/1. FLASH FILES/1. SRPSKI HRVATSKI JEZICI/E/E2230/E2230_XXKC1_CDS.zip 1336865398.0000000000 ./Mobilni Telefoni/11. Samsung/1. FLASH FILES/1. SRPSKI HRVATSKI JEZICI/E/E2230/E2230_XXKC1_BIN.zip 1336864949.0000000000 ./Mobilni Telefoni/11. Samsung/1. FLASH FILES/1. SRPSKI HRVATSKI JEZICI/E/E2230/E2230_OXFKC1_CSC.zip