Я пишу Сценарий оболочки, где я должен удалить файл на удаленной машине с помощью Сценария оболочки.
Теките вручную:
ssh username@domain.com
.. затем в домене:
cd ./some/where
rm some_file.war
Как выполнить ту задачу?
Можно передать ssh
клиент команда для выполнения вместо запуска оболочки путем добавления его к команде ssh.
ssh username@domain.com 'rm /some/where/some_file.war'
Вы не имеете к cd
к местоположению для удаления чего-то, пока Вы указываете полный путь таким образом, это - другой шаг, можно пропустить.
Следующим вопросом является аутентификация. Если Вы просто выполните это, то Вам предложат пароль. Если Вы не хотите вводить это в интерактивном режиме, необходимо настроить аутентификацию с открытым ключом.
Команда ssh имеет параметр команды (последний параметр в команде), что можно использовать для выполнения удаленных команд.
Установите ключи без пароля, затем добавляют команду как часть команды ssh. См.: http://www.dotkam.com/2009/03/10/run-commands-remotely-via-ssh-with-no-password/
-f
кому:rm
выполнение удаленного вызова? – Fedir RYKHTIK 07.05.2014, 18:43rm
они должны, конечно, быть переданы вызывающей стороне, если пользователь не знает, что ожидать и почему они переопределяют что-то. Большого количества ошибок и разбивающий отлаживание позже можно избежать, только используя опции, в которых Вы нуждаетесь в данном сценарии. – Caleb 07.05.2014, 23:20-f
опция кrm
коротко для--force
и имеет эффект, являются ли ошибки thown для несуществующих файлов или поддельных аргументов. Обычно команды работают не на основе интерактивного значения по умолчанию оболочек к тому, чтобы быть менее интерактивным так или иначе, но оно Ваш не, или Вы добираетесь, интерактивная подсказка нужно должна была бы зафиксировать настройки, непосредственно связанные с этим. При сценариях этого, у Вас не должно быть той проблемы так или иначе, и если Вы находитесь в интерактивной оболочке (где у Вас есть возможность катастрофических опечаток), необходимо использовать-I
на--interactive=never
установить Ваше желаемое поведение. – Caleb 09.05.2014, 17:06