1

Мне нужен интерактивный шаблон сценария 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 приветствуются.

Я попробовал это (спасибо за помощь Noam N. Kremen и slhk !!!):

#!/bin/bash  
read -e -p "Filename or pattern? " SRC_FILE  
rsync "$SRC_FILE" /dest/dir && rm -r "$SRC_FILE"

Итак, табуляция отлично работает, и после "цитирования" строк

"$SRC_FILE"

rsync перестал выдавать ошибки. Похоже, у меня теперь есть отличный маленький скрипт, который делает ТОЧНО то, что мне нужно !! И я узнал, как правильно отформатировать код здесь, спасибо!

1 ответ1

0

попробуйте read -e -p как в:

read -e -p "Enter destination filename" DEST_FILE

-e включает автозаполнение, а $ DEST_FILE будет содержать нужные вам данные.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .