Есть ли свободный клиент ftp, который имеет макросы

В данный момент я использую filezilla для развертывания новых версий сайта к живому серверу. проблема состоит в том, что существует один, или два конфигурируют, загружают и т.д. файлы, которые отличаются для живого сайта, и я должен бояться перезаписывать. Также существуют большие площади кода, которые никогда не изменяются (например, я использую платформу зенда, которая всегда является тем же).

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

Какой-либо клиент ftp предлагает это?

2
задан 13.10.2010, 17:57

2 ответа

ncftp имеет поддержку макросов. но я использовал бы реальный язык сценариев и затем передал бы только, что должно быть передано. и я предпочел бы ssh/sftp вместо ftp.

0
ответ дан 12.12.2019, 07:08

У меня есть установка, ожидают, что сценарии сделают эту самую вещь. Если Вы будете на окнах для клиента, то необходимо будет установить cygwin с, ожидают. На Linux просто необходимо удостовериться, что ожидать интерпретатор установлен. Вот демонстрационный сценарий, который я раньше передавал файлы с поля окон на сервер Linux с помощью scp. Это получает пароль, затем использует его для вызова scp многократно для отдельных файлов. Вы могли использовать sftp и подстановочные знаки для отправки нескольких файлов или даже ftp, но мне не нравится ftp. Ftp представляет пароли ясное.

#!/usr/bin/expect  --

# Prompt for the password and store it in $PASS
send_user "\n"
send_user "Password? "
stty -echo
expect_user -re "(.*)\n" {set PASS $expect_out(1,string)}
send_user "\n"
stty echo

# Set user name and parameters
# You can remove the above password entry and just set it here.
set user "username"
set server "server.com"
# set PASS "superSecret"
set timeout 30
set destDir "/home/user/www/htdocs/updates/"
set scp "/usr/bin/scp"

set file "/cygdrive/c/Workspace/Release/index.html"
puts "\rSending $file to $server\r"
spawn -noecho $scp $file $user@$server:$destDir
match_max 100000
expect "*?assword:*" 
send -- "$PASS\r"
send -- "\r"
expect eof

set file "/cygdrive/c/Workspace/Release/test.cfg"
puts "\rSending $file to $server\r"
spawn -noecho $scp $file $user@$server:$destDir
match_max 100000
expect "*?assword:*" 
send -- "$PASS\r"
send -- "\r"
expect eof
0
ответ дан 12.12.2019, 07:08

Теги

Похожие вопросы