Несколько раз в течение дня я могу запустить тест, в котором мне нужно просмотреть файл журнала на удаленном сервере. Я привык использовать свой терминал для подключения к sftp
удаленному серверу и извлекать нужный файл журнала /tmp
на свой локальный компьютер.
Я просматривал варианты сегодня, используя man sftp
в попытке выяснить способ запуска следующих команд в основном в одной строке, чтобы мне не приходилось вводить команду, нажимать ввод, вводить команду, нажимать ввод и т. Д.
(что я делаю сейчас)
sftp myuser@myserver
--mypassword at prompt
lcd /tmp
get /dir/dir/dir/dir/file
quit
Я нашел, просматривая man sftp
ссылку, scp
которой раньше не пользовался. Я чувствую, что это может быть то, что я ищу, но я не видел способа указать, куда я хотел бы поместить надежно скопированный файл.
Может ли кто-нибудь предоставить мне способ получить /dir/file
с удаленного сервера и загрузить его /tmp/file_plus-my-description
?
Я надеялся, что смогу запустить команду sftp или scp, аналогичную обычной копии UNIX, например:
scp myuser@myserver /dir/file /tmp/file_plus-my-description
Я использую встроенную Terminal
в Mac OS X 10.8. Спасибо.
Чтобы ЗАГРУЗИТЬ отдельный файл, вам необходимо создать сценарий bash. Что-то вроде следующего должно работать в OS X, если вы
sshpass
установили.Применение:
Поместите этот скрипт где-нибудь на своем пути и назовите его
sftpx
:источник
sftp поддерживает командные файлы.
На странице руководства:
источник
--batch
потребовало бы, чтобы я поместил свои команды в файл, а затем передал этот файл в качестве параметра. Я все еще играюscp
, думаю, это может содержать мое решение.Или
echo 'put {path to file}' | sftp {user}@{host}:{dir}
, что будет работать как в unix, так и в powershell.источник
Небольшая модификация, подобная приведенной ниже, сработала для меня, когда я использовал ее из вызова perl и system ():
источник
Ответ SCP
OP упомянул SCP, так что вот это.
Как отмечали другие, SFTP сбивает с толку, поскольку синтаксис загрузки полностью отличается от синтаксиса загрузки . Это становится немного легче запомнить , если вы используете один и тот же вид:
На самом деле это все еще беспорядок, и поэтому люди до сих пор используют "устаревшие" команды, такие как SCP:
SCP безопасен, но устарел. В нем есть некоторые ошибки, которые никогда не будут исправлены, а именно сбой, если сервер
.bash_profile
выдает сообщение. Однако с точки зрения удобства использования разработчики опередили нас на годы.источник