С pdftk
версия 1.45 (6 декабря 2012) или позже, используйте:
pdftk A=MyPdfFile.pdf shuffle AoddWest AevenEast output MyRotatedFile.pdf
Если Вы имеете pdftk
версия 1.44 (благодаря Gilles для указания на это!), можно использовать:
pdftk A=MyPdfFile.pdf shuffle AoddL AevenR output MyRotatedFile.pdf
Некоторые подобные случаи в качестве примера описаны в man pdftk
(по крайней мере, в последних версиях).
Не с ftp
программы, с которыми я столкнулся, поскольку они ожидают сценарий на своем стандартном входе, но хижина передала бы название сценария их командной строке.
Можно использовать здесь документ для передачи сценария ftp
через обертку оболочки.
#!/bin/sh
ftp <<EOF
open 192.168.1.1
put *.gz
EOF
Lftp признает, что название сценария передало как аргумент.
#!/usr/bin/lftp -f
open 192.168.1.1
put *.gz
Ncftp идет с двумя инструментами ncftpget
и ncftpput
для простых пакетов получает или помещает.
Zsh включает модуль FTP. Используя надлежащую оболочку, а не прямой FTP сценарий имеет преимущество, что можно реагировать на отказы.
#!/bin/zsh
zmodload zsh/zftp
open 192.168.1.1
put *.gz
Конечно, существует много других языков, которые Вы могли использовать: Perl, Python, Ruby, и т.д.
Другой подход должен смонтировать FTP-сервер как каталог и затем использовать cp
(или rsync
или другие инструменты) для копирования файлов. Существует много файловых систем FUSE для доступа FTP, преимущественно CurlFtpFS и LftpFS.
Обратите внимание, что, если Вы планировали использовать аутентификацию (вероятно, если бы Вы загружаете), и Вы управляете сервером, Вы были бы более обеспечены с доступом SSH. Это более безопасно и более гибко. Для копирования файлов по SSH можно использовать scp
или sftp
, или rsync для эффективной синхронизации (если некоторые файлы могут уже быть там), или Унисон (для двунаправленной синхронизации), или монтируются с SshFS.