Перезаписать файл на удаленном сервере с помощью psftp, если он существует только

Я новичок с командной строкой и загрузкой из командной строки PSFTP, я привык к FileZilla, но на данный момент я загружаю некоторые файлы с расширением (.js, .php, .txt) на мой удаленный сервер через командную строку PSFTP.

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

Теперь мой вопрос: так же, как @Override команда в Java, где компилятор выдает ошибку, если метод, который вы пытаетесь переопределить, не входит в суперкласс, есть ли ключевое слово для этого тоже в PSFTP, потому что я хотел переопределить файл, и если он не существует Я хочу отменить загрузку.

1 ответ

Решение

Там нет такой команды / ключевое слово в psftp,


Но вы можете добиться этого с WinSCP, используя его stat командование Используйте следующий пакетный файл:

@echo off
winscp.com /command ^
    "open sftp://user:pass@example.com/" ^
    "stat /home/user/file.txt" ^
    "put c:\file.txt /home/user/file.txt" ^
    "exit"

По умолчанию WinSCP прерывает выполнение сценария, если какая-либо команда не выполнена. stat Команда возвращает атрибуты удаленного файла. Если file.txt не существует, stat команды терпят неудачу, и put никогда не бывает

Узнайте больше о сценариях с WinSCP:
https://winscp.net/eng/docs/guide_automation

(Я автор WinSCP)

Другие вопросы по тегам