Ви не можете уникнути одинарних лапок, які відображаються в межах однієї лапки. Як пояснено у [посібнику з bash] :( http://www.gnu.org/software/bash/manual/bashref.html#Single-Quotes ):
Замикання символів в одиничних лапках ('' ') зберігає буквальне значення кожного символу в лапках. Одиночна цитата може не виникати між окремими цитатами, навіть коли передує зворотна косою рисою .
Отже, вам доведеться використовувати різні підходи:
Використовуйте подвійні лапки:
grep "'type' => 'select'" file
Якщо ви віддаєте перевагу зайве складні рішення:
grep "'"type"'"\ =\>\ "'"select"'" file
Ви завжди можете шукати будь-який окремий символ замість того, щоб вказувати єдині лапки:
grep '.type. => .select.' file
Але просто використання "
це робить речі набагато простішими.