Вопросы с тегом «text-processing»

Манипулирование или изучение текста с помощью программ, сценариев и т. Д.

751
Как я могу заменить строку в файле (ах)?

Замена строк в файлах на основе определенных критериев поиска является очень распространенной задачей. Как я могу заменить строку fooс barво всех файлов в текущем каталоге? сделать то же самое рекурсивно для подкаталогов? заменить только если имя файла совпадает с другой строкой? заменить только...

547
Почему printf лучше, чем echo?

Я слышал, что printfэто лучше, чем echo. Из своего опыта я могу вспомнить только один случай, когда мне приходилось использовать, printfпотому что echoон не работал для подачи текста в какую-то программу на RHEL 5.8, но printfработал. Но, видимо, есть и другие различия, и я хотел бы узнать, что это...

301
Как добавить несколько строк в файл

Я пишу bash-скрипт для поиска файла, если он не существует, затем создайте его и добавьте к нему: Host localhost ForwardAgent yes Так что "line then new line 'tab' then text"я думаю, что это чувствительный формат. Я знаю, что вы можете сделать это: cat temp.txt >> data.txt Но это кажется...

293
Может ли grep выводить только указанные группы, которые совпадают?

Скажи, у меня есть файл: # file: 'test.txt' foobar bash 1 bash foobar happy foobar Я только хочу знать, какие слова появляются после "foobar", поэтому я могу использовать это регулярное выражение: "foobar \(\w\+\)" Скобки указывают, что у меня есть особый интерес к слову сразу после foobar. Но...

196
Почему использование цикла оболочки для обработки текста считается плохой практикой?

Является ли использование цикла while для обработки текста вообще плохой практикой в ​​оболочках POSIX? Как отметил Стефан Шазелас , некоторые из причин, по которым не используется оболочка, - это концептуальность , надежность , удобочитаемость , производительность и безопасность . Этот ответ...

196
Как вы сортируете вывод по размеру?

Как вы сортируете du -sh /dir/*по размеру? Я прочитал один сайт, который сказал использовать, | sort -nно это явно не правильно. Вот пример, который не так. [~]# du -sh /var/* | sort -n 0 /var/mail 1.2M /var/www 1.8M /var/tmp 1.9G /var/named 2.9M /var/run 4.1G /var/log 8.0K /var/account 8.0K...

155
Как обрезать начальные и конечные пробелы в каждой строке некоторого вывода?

Я хотел бы удалить все начальные и конечные пробелы и вкладки из каждой строки в выводе. Есть ли простой инструмент, как trimя мог бы передать свой вывод? Пример файла: test space at back test space at front TAB at end TAB at front sequence of some space in the middle some empty lines with...

142
Как я могу обернуть текст в столбец определенного размера?

Я знаю, что могу использовать что-то вроде cat test.txt | pr -w 80обтекания строк шириной до 80 символов, но это занимает много места сверху и снизу напечатанных строк, и это не работает в некоторых системах Какой лучший способ заставить текстовый файл с длинными строками быть обернутыми на...

126
Заменить строку в огромном (70 ГБ), одной строке, текстовом файле

У меня есть огромный (70 ГБ), одна строка , текстовый файл, и я хочу заменить строку (токен) в нем. Я хочу заменить токен <unk>другим фиктивным токеном ( проблема с перчатками ). Я пробовал sed: sed 's/<unk>/<raw_unk>/g' < corpus.txt > corpus.txt.new но выходной файл...

126
Как удалить дубликаты строк внутри текстового файла?

Огромный (до 2 ГиБ) мой текстовый файл содержит около 100 точных дубликатов каждой строки в нем (в моем случае это бесполезно, поскольку файл представляет собой таблицу данных, похожую на CSV). Что мне нужно, так это удалить все повторения, при этом (желательно, но этим можно пожертвовать ради...

123
удалить отдельные символы из переменной, используя bash

Я хочу проанализировать переменную (в моем случае это версия комплекта разработчика), чтобы сделать ее .свободной ( ). Если version='2.3.3'желаемый результат есть 233. Я попробовал, как показано ниже, но его нужно .заменить другим персонажем, дающим мне 2_3_3. Было бы хорошо, если tr . ''бы...

109
Вернуть только часть строки после соответствующего шаблона

Таким образом, открывание файла с помощью catи последующее использование grepдля получения совпадающих строк только уводит меня, когда я работаю с определенным набором журналов, с которым я имею дело. Нужен способ сопоставления линий с шаблоном, но только для возврата части строки после...

101
Декодирование URL-кодировки (процентное кодирование)

Я хочу расшифровать кодировку URL-адреса, есть ли встроенный инструмент для этого или кто-нибудь может предоставить мне sedкод, который это сделает? Я немного поискал на unix.stackexchange.com и в Интернете, но не смог найти инструмента командной строки для декодирования кодировки URL. Я хочу...

94
Стандартный инструмент для преобразования количества байтов в KiB, MiB и т. Д .; как du, ls1

Существует ли стандартный инструмент, который преобразует целое число байтов в удобочитаемый счетчик максимально возможного размера блока, сохраняя при этом числовое значение от 1,00 до 1023,99? У меня есть свой собственный скрипт bash / awk, но я ищу стандартный инструмент, который можно найти во...

93
Как удалить первые n строк файла ascii с помощью команд оболочки?

У меня есть несколько файлов, которые содержат текстовую информацию ascii в первых 5-10 строках, за которыми следуют хорошо табличные данные матрицы В сценарии оболочки я хочу удалить эти первые несколько строк текста, чтобы я мог использовать информацию чистой матрицы в другой программе. Как я...

88
Как посчитать количество конкретного символа в каждой строке?

Мне было интересно, как подсчитать количество конкретного символа в каждой строке некоторыми утилитами обработки текста? Например, чтобы посчитать "в каждой строке следующего текста "hello!" Thank you! Первая строка имеет две, а вторая строка имеет 0. Другой пример - считать (в каждой...

85
Преобразовать содержимое файла в нижний регистр

У меня есть tempфайл с содержимым в нижнем и верхнем регистре. вход Содержание моего tempфайла: hi Jigar GANDHI jiga Я хочу преобразовать все верхнее в нижнее . команда Я попробовал следующую команду: sed -e "s/[A-Z]/[a-z]/g" temp но получил неправильный вывод. Выход Я хочу это как: hi jigar gandhi...