Файл журнала для подтверждения загрузки SFTP

Я получаю доступ к SFTP через LFTP, используя приведенный ниже сценарий. Он запускается из cron 11.04.16.23. По какой-то неизвестной причине с неизвестными интервалами у меня случаются сбои. Как распечатать файл журнала, который подтвердит ls -l для файла, который я загружаю? Я надеюсь, что это может быть обернуто в существующий сценарий. Есть ли лучший способ зарегистрировать подтверждение, чем ls -l?

# Upload to SFTP via LFTP
#
host="hostname.com"
user="usrname"
pass="passw"
rdir="remote/dir"
file="upload-file.txt"

lftp -u $user,$pass sftp://$host -e "cd $rdir ; put $file ; bye"
# 

person Dan K    schedule 02.06.2016    source источник
comment
что означает отрицательный балл? кто-нибудь может помочь?   -  person Dan K    schedule 02.06.2016
comment
кто-нибудь может помочь? Кажется, у Google нет достаточно близкого примера, чтобы я мог его понять, а справочные страницы все еще немного выше моего понимания .......   -  person Dan K    schedule 03.06.2016


Ответы (1)


Вы можете включить отладку с помощью команды «debug». С опцией -o FILE он может сохранить вывод отладки в файл. Также вы можете добавить «ls -l >> file» после команды put, чтобы добавить вывод ls в файл.

Например:

lftp -e "debug -o debug.log; put file; ls file >> remote-ls.log; bye" sftp://user:[email protected]/remote/path
person lav    schedule 03.06.2016
comment
Он хочет получить состояние файла в удаленной системе, а не в локальной системе. ls не будет отображать файлы в удаленных системах. - person Kenster; 03.06.2016
comment
Внутри кавычек после опции -e есть команды lftp, а ls будет печатать состояние удаленного файла. - person lav; 04.06.2016
comment
Лав, можете ли вы привести пример того, как я могу использовать параметр -o для сохранения ls на удаленном компьютере в папку на моем локальном компьютере? - person Dan K; 06.06.2016
comment
Я добавил пример в свой ответ. - person lav; 06.06.2016