2016-10-02 3 views
1

люди ... Im кодирует файл bash linux, и мне нужно его grep для текста 'Josh''1234. Есть ли способ игнорировать эти апострофы? Вот что я пробовал: (Josh устанавливается как usr и 1234 как pas.)Как grep файл для текста с апострофами?

if grep -q '\'$usr\'\'$pas\''; then 
    echo username and password correct 
else 
    echo INCORECT 
    sleep 10 
fi 

ответ

1

Просто процитировать в двойные кавычки, так что одиночные кавычки могут быть включены обычно:

grep "'$usr''$pas" 
# ^  ^
# ^ ^^ 
#  single quotes to match 
+0

Или, если '» 'трудно запомнить,' .' только наполовину сложнее: 'grep. $ usr .. $ pas' Это решение предоставляется решениями QND. Человек, мне действительно нужно сделать что-то более продуктивное ... Этот комментарий будет сам destruct in ... –

+0

Я предлагаю добавить '.' после' $ pas'. – Cyrus

+0

Почему, @Cyrus? Это немного запутывает, как OP обращается к нему: он упоминает '' Josh''1234' (без какого-либо дополнительного символа после прохода), но затем '' \ '$ usr \' \ '$ pas \' ''. – fedorqui

Смежные вопросы