AIX w / bash: сценарий ftp stdin, не может "поместить файл-` дату + "% Y% m% d" ` - PullRequest
1 голос
/ 01 ноября 2011

У меня много проблем с сценарием, который я пишу, который будет загружать файл на удаленный FTP-сервер.

У нас есть программное обеспечение, которое генерирует файлы в этом формате:

filename-`date +"%Y%m%d"`

Моя проблема в том, что я не могу получить ftp для расширения этого выражения даты, я хотел бы иметь возможность сделать следующее:

put filename1-`date +"%Y%m%d"` 

из .netrc или из stdin, например:

ftp -n ftp.server.com < ftpcommands.txt

Я пробовал это, но ftp воспринимает выражение даты буквально, и я получаю "filename1-` дата .... файл не найден "

Кто-нибудь знает способ, которымЯ мог бы решить эту проблему?

Кроме того, кто-нибудь знает, можете ли вы указать подкоманды ftp в командной строке?У меня проблемы с поиском примеров.Если это возможно, то bash расширит выражение даты и передаст его ftp, но я не нашел ни одного варианта, который бы соответствовал требованиям.

Я использую оболочку bash

Спасибо!

1 Ответ

3 голосов
/ 01 ноября 2011

Программа ftp не выполняет расширения оболочки.Одна вещь, которую вы можете сделать, это:

ftp -n ftp.server.com << EOF
# insert other commands here
put filename1-$(date +"%Y%m%d")
EOF

Здесь документ Bash будет расширен, чтобы делать то, что вы хотите.

...