Команда Unix grep выводит мусор - PullRequest
1 голос
/ 26 марта 2012

Я выполняю следующую команду "grep bruno

Я в командеоболочки на Mac OS X v10.6.8, и я уверен, что я должен получить строку найденного слова и слова.Не мусор.

Это вывод:

Mobile-Devs-MacBook-Pro:Screenshots Poupe mdev$ grep bruno < bash.txt  
\f0\fs24 \cf0 bruno\

В bash.txt я написал только "bruno", если я выводил с "cat bash.txt", он также дает мнеследующий мусор:

Mobile-Devs-MacBook-Pro:Screenshots Poupe mdev$ cat bash.txt
{\rtf1\ansi\ansicpg1252\cocoartf1038\cocoasubrtf360
{\fonttbl\f0\fswiss\fcharset0 Helvetica;}
{\colortbl;\red255\green255\blue255;}
\paperw11900\paperh16840\margl1440\margr1440\vieww9000\viewh8400\viewkind0
\pard\tx566\tx1133\tx1700\tx2267\tx2834\tx3401\tx3968\tx4535\tx5102\tx5669\tx6236\tx6803\ql\qnatural\pardirnatural

\f0\fs24 \cf0 bruno\

Если я сделаю «echo bruno> bash.txt», а затем «cat bash.txt», это даст мне чистый вывод.Почему я не вижу чистый вывод, когда я пишу файл вручную?

Ответы [ 3 ]

2 голосов
/ 26 марта 2012

Это не простой текстовый файл.Это похоже на RTF.Grep понимает только текст, и его задача - вывести всю строку, в которой найден текст для поиска.

Я не могу судить по вашему форматированию, но я должен верить, что «мусор», который вы видите, находится в той же строкекак текст "бруно".

2 голосов
/ 26 марта 2012

Ваш файл не является простым текстовым файлом.Это RTF .grep дает вам строку, содержащую "bruno", вместе с форматированным текстом.

Когда вы делаете:

echo bruno > bash.txt

bash.txt содержит только «bruno».

Когда вы «редактируете файл вручную», ваш редактор сохраняется как RTF,Вы должны сохранить как обычный текст.

Plain Text

0 голосов
/ 26 марта 2012

Как уже отмечали другие, проблема в том, что файл имеет формат RTF и содержит информацию о форматировании. Если вы хотите создать простой текстовый файл в TextEdit, используйте пункт меню «Формат»> «Сделать обычный текст» перед его сохранением. Более того, вообще не используйте TextEdit - мой любимый для редактирования простого текста TextWrangler , но есть много других вариантов.

...