Мне нужен интерактивный шаблон сценария bash для копирования файлов в предопределенные папки назначения. Если возможно, при появлении запроса на завершение ввода пользователем будет включена предопределенная исходная директория Основная логика будет выглядеть примерно так:
Пример сценария 1:
/bin/bash
enable tab completion to load from /src/dir #perhaps using pwd as script is loaded
echo "filename or pattern?" #interactively ask user to provide filename or pattern
'user input'=$FILENAME #define interactive user input as filename
rsync -rv /src/dir/$FILENAME /dest/dir/ && rm -r /src/dir/$FILENAME
done
Я знаю, что это грубо / неправильно, но, надеюсь, желаемый результат достаточно ясен. Заранее спасибо за любое руководство! Ссылки на конкретные методы написания сценариев bash приветствуются.
Я попробовал это (спасибо за помощь Ноам Н. Кремень а также slhk !!!):
#!/bin/bash
read -e -p "Filename or pattern? " SRC_FILE
rsync "$SRC_FILE" /dest/dir && rm -r "$SRC_FILE"
Итак, табуляция отлично работает, и после "цитирования" строк
"$SRC_FILE"
rsync перестал выдавать ошибки. Похоже, у меня теперь есть отличный маленький скрипт, который делает ТОЧНО, что мне нужно !! И я узнал, как правильно отформатировать код здесь, спасибо!
источник
rsync "$SRC_FILE"
, и посмотреть mywiki.wooledge.org/QuotesОтветы:
пытаться
read -e -p
как в:-e включает автозаполнение, а $ DEST_FILE будет содержать нужные вам данные.
источник