Как получить список имен файлов с помощью ncftp? - PullRequest
0 голосов
/ 29 января 2019

Итак, я попытался

ncftpls -l

, что дает мне список

-rw-r--r--    1 100        ftpgroup      3817084 Jan 29 15:50 1548773401.tar.gz
-rw-r--r--    1 100        ftpgroup      3817089 Jan 29 15:51 1548773461.tar.gz
-rw-r--r--    1 100        ftpgroup      3817083 Jan 29 15:52 1548773521.tar.gz
-rw-r--r--    1 100        ftpgroup      3817085 Jan 29 15:53 1548773582.tar.gz
-rw-r--r--    1 100        ftpgroup      3817090 Jan 29 15:54 1548773642.tar.gz

Но все, что я хочу, это проверить метку времени (которая называется tar.gz). Какчтобы получить только список меток времени?

В соответствии с запросом все, что я хотел сделать, - это удалить старые резервные копии, , поэтому awk был хорошей идеей (по крайней мере, она была эффективной), даже если это были неправильные параметры.Мой метод удаления старой резервной копии, вероятно, не самый лучший, но он работает

ncftpls *authParams* | (awk '{match($9,/^[0-9]+/, a)}{ print a[0] }') | while read fileCreationDate; do
    VALIDITY_LIMIT="$((`date +%s`-600))"
    a=$VALIDITY_LIMIT
    b=$fileCreationDate
    if [ $b -lt $a ];then
        deleteFtpFile $b
    fi
done;

1 Ответ

0 голосов
/ 29 января 2019

Вы можете использовать awk, чтобы отображать только временные метки с выхода:

ncftpls -l | awk '{ print $5 }'
...