Назад | Перейти на главную страницу

запустить сценарий, который запрашивает ввод только в командной строке

Тестируя пакетный скрипт, я выполняю его в bash. Я хочу видеть подсказки и отвечать, вводя переменные.

Например, следующее работает, но я хочу запрашивать эти входные данные, а не помещать литералы в свой сценарий. Итак, 1 доллар, 2 доллара вместо этих:

srcWidgetName="Foo"
newWidgetName="bar"

find . -type f -name "$srcWidgetName*" | while read -r file; do
    mv "$file" "${file//$srcWidgetName/$newWidgetName}"
done

Это то, что вы пытаетесь сделать?

echo -n "Enter the source widget name [ENTER]: "
read srcWidgetName
echo -n "Enter the destination widget name [ENTER]: "
read dstWidgetName

find . -type f -name "$srcWidgetName*" | while read -r file; do
    mv "$file" "${file//$srcWidgetName/$dstWidgetName}"
done