Я освоил основы составных условных выражений Bash и прочитал несколько различных способов проверки существования файла с подстановочными символами, но этот способ ускользает от меня, поэтому я решил, что попросу помощи ... 1001 *
Мне нужно:
1.) Проверьте, существует ли какой-либо файл, соответствующий шаблону
А ТАКЖЕ
2.) Убедитесь, что текст в другом файле существует.
Я знаю, что есть много способов сделать это, но у меня действительно нет знаний, чтобы расставить приоритеты (если у вас есть эти знания, мне было бы интересно также прочитать об этом).
Первое, что пришло в голову, это использовать find для # 1 и grep для # 2
Так что-то вроде
if [ `grep -q "OUTPUT FILE AT STEP 1000" ../log/minimize.log` ] \
&& [ `find -name "jobscript_minim\*cmd\*o\*"` ]; then
echo "Both passed! (1)"
fi
Это терпит неудачу, хотя с любопытством:
if `grep -q "OUTPUT FILE AT STEP 1000" ../log/minimize.log` ;then
echo "Text passed!"
fi
if `find -name "jobscript_minim\*cmd\*o\*"` ;then
echo "File passed!"
fi
оба прохода ...
Я немного прочитал и видел, как люди говорили о проблеме множественных имен файлов, совпадающих с подстановочными знаками в операторе if. Каково лучшее решение для этого? (отвечая на мой вопрос, я предположил, что вы также разбираетесь с этим вопросом в процессе)
Есть идеи / решения / предложения?