У меня возникли проблемы с работой сценария оболочки. Я пытаюсь динамически сгенерировать команду find на основе ввода пользователя, и я сталкиваюсь с проблемой, заключающейся в том, что мои переменные в команде find заключаются в одинарные кавычки, как уже описано здесь.
Поэтому, если я выведу на экран мою переменную, они будут отображаться как -iname "*.flv"
но как только они попадут в команду поиска, они -iname "*.flv"
с одинарными кавычками и команда find не будет выполнена.
Я пытался реализовать ответы, данные в другой ветке SO, но я не могу понять это.
Есть идеи, что там не так?
Спасибо!
if [[ ! "$medium" == "" ]]
then
needles=$needles' -iname "'*$medium*'"'
fi
echo $needles
#-iname "*.flv"
echo $path
#/Users/user/Movies/
find "$path" $needles -type f -exec basename {} \; | gshuf -n 1
# + find '/Users/user/Movies' -iname '"*dvd*"' -type f -exec basename '{}' ';'