Как часть этого скрипта, я должен быть в состоянии проверить, соответствует ли первый аргумент первого слова файла. Если это так, выйдите с сообщением об ошибке; если это не так, добавьте аргументы в файл. Я понимаю, как написать if
заявление, но не как использовать grep
в сценарии. Я понимаю, что grep
будет выглядеть примерно так
grep ^$1 schemas.txt
Я чувствую, что это должно быть намного легче, чем я делаю это.
Я получаю сообщение об ошибке «слишком много аргументов» if
. Я избавился от пробела между ними, grep -q
а затем получил ошибку двоичного оператора.
if [ grep -q ^$1 schemas.txt ]
then
echo "Schema already exists. Please try again"
exit 1
else
echo "$@" >> schemas.txt
fi
[
...]
и это сработает. Хотя вы, вероятно, хотите процитировать свою модель:if grep -q "^$1" schemas.txt; then …