J'utilise l'éditeur de texte gedit avec un terminal intégré dans Ubuntu 12.04. J'essaie de rechercher du texte en utilisant grep
. Je veux rechercher cette ligne de code
'type' => 'select'
J'ai essayé:
grep -r '\'type\' => \'select\''
Mais grep
n'a renvoyé aucun résultat.
Alors quelqu'un peut-il me dire comment bien rechercher le code ci-dessus?
Entourez votre chaîne de recherche de guillemets:
grep "'type' => 'select'"
Vous ne pouvez pas échapper aux guillemets simples qui apparaissent entre guillemets simples. Comme expliqué dans le [manuel bash]: ( http://www.gnu.org/software/bash/manual/bashref.html#Single-Quotes ):
Les caractères entre guillemets simples (‘'') préservent la valeur littérale de chaque caractère entre guillemets. Une citation unique ne peut pas apparaître entre guillemets simples, même si elle est précédée d'une barre oblique inverse .
Donc, vous devez utiliser différentes approches:
Utilisez des guillemets doubles:
grep "'type' => 'select'" file
Si vous préférez des solutions inutilement complexes:
grep "'"type"'"\ =\>\ "'"select"'" file
Vous pouvez toujours rechercher un seul caractère au lieu de spécifier les guillemets simples:
grep '.type. => .select.' file
Mais utilisez simplement "
, cela rend les choses beaucoup plus simples.
cd vers le répertoire qui contient votre fichier .txt
cd /path
Ensuite :
vous pouvez utiliser grep "'type' => 'select'" name.txt
ou :
`grep "'type' => 'select'" /path/file.txt
Sortie: