-
linux bash dotaz
ahoj, delam takovej skript do skoly, mam to temer hotovy, jen mi do toho chybi vypsat posledni zmenenej soubor z home
udelal jsem to pomoci:
soubor=`ls --sort=time | head -1`
jenze ted jsem si uvedomil, ze neprochazim podadresare
kdyz bych pro ls dal -R tak vystup zase neni vhodnej pro jednoduchy orezani head -1
mate nekdo radu?
diky
-
Re: linux bash dotaz
Rychle sesmoleno, zkus jestli to beha, kdyz tak nahod reklamaci, mam toho tedka sam dost, tak na poradne testovani neni cas.
a=$( ls -R -l --time-style=+%s | awk '{ print $6 }' | sort -g | tail -1 ); ls -R -l --time-style=+%s | awk -v date="$a" '{ if($6 ~ date){ print $7 } }'
EDIT: Tak jsem se k tomu ted dostal, to puvodni vypisuje vse, jak soubory, direktorare, tak symlinky a navic, pokud je vice veci zmenenejch ve stejnej cas, tak to vypise vsechny. Pokud chces teda jen jeden a pouze soubor, pak takhle...
a=$( ls -R -l --time-style=+%s | grep ^- | awk '{ print $6 }' | sort -g | tail -1 ); soubor=$( ls -R -l --time-style=+%s | grep ^- | awk -v date="$a" '{ if($6 ~ date){ print $7 } }' | head -1 )
nebo
a=$( ls -R -l --time-style=+%s | grep ^- | awk '{ print $6 }' | sort -g | tail -1 ); soubor=$( ls -R -l --time-style=+%s | grep ^- | awk -v date="$a" '{ if($6 ~ date){ print $7 } }' | tail -1 )
zalezi, kterej z tech naposled menenejch chces
EDIT2: tak se mi tam vloudila chybicka, sort musi mit parametr -g, jinak se to obcas pojebe, takze to jsem doplnil :))
-
Re: linux bash dotaz
Kód:
find ~ -type f -printf %C@#%p\\n | sort -n -r | head -n 1 | cut -d# -f2
-
Re: linux bash dotaz