Я всегда писал ftp-скрипт! Очень старая школа. Как заблуждаются здесь другие, FTP спроектирован для работы как пакетный скрипт, и то, что он архаичен, не означает, что он не работает. FTP и vsftp очень небезопасны, потому что ваш идентификатор / пароль отправляется открытым текстом по сети. Вот почему люди используют sftp или scp (который использует протокол SSH). Но если пароли в открытом виде по сети не беспокоят вашу среду, например это закрытая сеть, ftp - допустимый вариант, и его немного проще настроить и поддерживать, чем службы, использующие ssh.
Это пример сценария ниже:
#! / Bin / bash
ftp -nv myservernameorip << EOF
quote USER myuserid
quote PASS mypasswd {{1 }} двоичный
ls
put some_files
get some_files
quit
EOF
Просто замените myservernameorip, myuserid и mypasswd 'с реальным именем хоста / IP и информацией об учетной записи; а также изменить ls
, положить
и / или получить
команду 'some_files' с реальными путями к файлам.
Если вы хотите сделать это самостоятельно с помощью скрипта, вам подойдет что-то вроде этого:
#!/bin/bash
lastFile="$(find -type f -iname '*.jpg' -printf '%T@ %p\n' | sort -k1 -n | tail -1 | awk '{print $2}')"
# Move it anyway you like, I use scp for demonstration
rsync -au "$lastFile" me@192.168.200.10:/path/to/files/
# Then remove it, move it or anything else you want
rm -i "$lastFile"
Однако помните, что этот скрипт использует время модификации, потому что linux не записывает время создания.
find
взято из здесь .
find -type f -iname '*.jpg' -printf '%T@ %p\n'
список jpg
файлов с указанием времени их модификации
sort -k1 -n
сортирует их по времени модификации
tail -1
берем новейшее awk '{print $2}
сохранить только имя файла Сzsh
:
scp./**/*.jpg(D.om[1]) host:
om
сортирует по времени последней -модификации, которое можно рассматривать как время создания содержимого файла.
Некоторым инструментам нравится устанавливать время модификации изображений на время, когда снимок был сделан (, когда эта информация доступна в метаданных изображения, например, помещенных туда камерой ).
Вы также можете использовать oc
вместо om
, что будет сортировать на основе изменения времени. Это одна отметка времени, которую нельзя установить произвольно и обновлять каждый раз, когда какие-либо (данные или метаданные )изменяются в файле.