Я создал сценарий lftp для загрузки отдельных файлов на веб-хостинг-провайдера.
Вариант использования заключается в том, что я вызываю его из корня репозитория, поэтому относительный путь здесь и на удаленном сервере одинаков.
#!/bin/bash
DIRNAME=$(dirname $1)
FILENAME=$(basename $1)
REPO_ROOT=$(pwd)
ABSOLUTE_PATH=${REPO_ROOT}/$1
lftp -u user,passwd -p port sftp://user@hosting <<EOF
cd $DIRNAME
put $ABSOLUTE_PATH
ls -l $FILENAME
quit 0
EOF
Это работает, с одной небольшой, но досадной ошибкой. Чтобы убедиться, что он действительно загружает файл, я поставил ls -l
в конце. Это терпит неудачу, и я не понимаю, почему:
ls: Access failed: No such file(functions.php)
Я пытался использовать rels
и cache flush
, но тщетно. Я использую лфтп 4.0.9.