Piszę skrypt powłoki, w którym muszę znaleźć datę ostatniej modyfikacji pliku.Polecenie uniksowe (inne niż "stat" i "ls"), aby uzyskać datę modyfikacji pliku bez analizowania
Stat
Polecenie nie jest dostępne w moim środowisku.
Więc używam 'ls'
, jak poniżej, aby uzyskać pożądany wynik.
ls -l filename | awk '{print $6 $7 $8}'
Ale czytałem na wielu forach, że parsing ls
is generally considered bad practise. Chociaż (prawdopodobnie) działa dobrze przez większość czasu, nie ma gwarancji, że będzie działać za każdym razem.
Czy istnieje inny sposób uzyskania daty modyfikacji pliku w skrypcie powłoki.
Jeśli 'stat' nie jest dostępny, istnieje duża szansa' znaleźć opcja -printf' nie jest albo. 'stat' nie jest standardowym poleceniem Uniksa, a' -printf' jest rozszerzeniem Gnu. – jlliagre
@jlliagre również, mam nadzieję, OP poinformuje nas, czy jest to wykonalne rozwiązanie, czy nie. Jeśli nie, możemy wymyślić inne opcje. – Levon
OSX (10.9): Mamy stat, ale bez printf. –