У меня есть куча представлений для моей базы данных и вам необходимо обновить операторы select в каждом представлении.Заменить текст из инструкции выбора из одного файла в другой
У меня есть все операторы select в файлах с именем viewname.txt в одном каталоге и в поддиректории, называемом sql; У меня есть все взгляды viewname.sql. Я хочу запустить сценарий, чтобы взять текст с viewname.txt и заменить оператор select в правильном viewname.sql в подкаталоге sql.
Я попытался это, чтобы добавить текст после SELECT, в каждом файле .sql:
for i in */*; do
if ["../$(basename "${i}")" == "$(basename "${i}")"]
then
sed '/SELECT/a "$(basename "$i" .txt)"' "$(basename "$i" .sql)"
fi
done
Любая помощь очень ценится!
Дики
включить отладчик оболочки с 'set -vx', и вы должны увидеть очевидную логическую ошибку в вашем тесте' if'. Также может захотеть прочитать о документах «ЗДЕСЬ», используя 'sed << - EOS #sed_cmds без одинарных кавычек .... EOS' вы могли бы использовать' cat $ viewname.txt' внутри документа «ЗДЕСЬ» (я достаточно уверен). Удачи. – shellter