У меня есть следующий код, написанный для отправки файлов через sftp. Это не работает, когда имена файлов имеют пробелы. Я пытался избежать двойных кавычек, все еще бесполезно. Пожалуйста, помогите.
Сценарий:
##----------Secure file transfer
sftp $REMOTE_USER@$REMOTE_HOST <<TRANSFER_SCRIPT
cd $REMOTE_DIR
$(
for FNAME in "$FILE_NAME" "$FILE_NAME2" "$FILE_NAME3" "$FILE_NAME4" "$FILE_NAME5"; do
if [ ! -z "$FNAME" ]; then
echo "put \\\"$FNAME\\\"";
fi
done
)
quit
TRANSFER_SCRIPT
Ошибка:
sftp> поставить тест 2.txt
stat test: Нет такого файла или каталога
Expectation:
sftp> поставить "test 2.txt"