Я новичок в сценариях оболочки. Я пытаюсь переименовать несколько файлов, используя подстановочный знак в SFTP.

Пожалуйста, предоставьте мне какое-нибудь решение. или предложить какую-то идею

Мой сценарий sh:

sftp  $userName@$hostName <<EOF
lcd  $downloadPath
cd $rootpath
rename  *.txt  $rootpath/*.txt
exit
EOF 

За это я получил ошибку ниже:

couldnt rename : no such file directory

1 ответ1

1

Клиент sftp довольно прост и не будет выполнять циклы или замену переменных. Ты должен

  • Выполните первую команду SFTP, которая выполняет ls каталога, и перехватите ее вывод
  • обработать этот вывод для генерации списка команды переименования для каждого файла
  • Выполните вторую команду SFTP, выполнив этот список команд переименования.

В общем, альтернативы, вероятно, проще.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .