Подавить дату, время и имя файла в выводе хвоста - PullRequest
0 голосов
/ 03 апреля 2012

Я делаю Xcode dev и перезаписываю NSLog для вывода вывода в файл, чтобы я мог создать полезное окно журнала в отличие от беспорядка, который в настоящее время находится в Xcode.

Я использую tail ala терминал для отображения содержимого файла примерно так:

tail -f 'iPhone Simulator log.txt'

Мне интересно, если tail - это неправильный cmd для использования. Причина в том, что мне не нужна дополнительная информация, которую хвост поставляет в начале каждой строки, дате, времени и имени файла.

Не похоже, что подавление этого вывода является параметром в tail.

Поскольку информация, которую я не хочу, заканчивается на "]", можно ли использовать grep, sed или awk, чтобы вырезать эти данные из каждой строки и вывести только остальное на экран, чтобы я мог получить хороший небольшой журнал вывода, который я создаю, и ничего более?

ТИА, - Алекс

Ответы [ 3 ]

1 голос
/ 04 апреля 2012

Использование sed:

tail -f 'iPhone Simulator log.txt' | sed -e 's/^\[[^]]*\]//'

Регулярное выражение:

 ^ - beginning of the line
 \[ - start [
 [^]]* - anything but the ]
 \] - end ]
1 голос
/ 03 апреля 2012

Я бы использовал cut: http://www.manpagez.com/man/1/cut/

tail -f 'iPhone Simulator log.txt' | cut -c 25-

(Предположим, 24 - это количество символов, которое вы хотите убрать ..)

0 голосов
/ 04 апреля 2012

Хммм. Вдохновленный вашим ответом барсю, я немного понюхал, и это работает:

tail -f 'iPhone Simulator log.txt' | sed -e 's/.*]/]/g'

Хотя это верно для многих вещей, связанных с регулярными выражениями, я понятия не имею, почему.

Что делает, хотя это было непреднамеренно и хорошо, было удалено только до символа] в начале каждой строки. Это означает, что я получаю последовательность символов в скобках в начале каждой строки. Это хорошо, так как эта небольшая часть непреднамеренного дизайна на самом деле приятно показывает новые строки данных, не занимая слишком много символов.

Кроме того, этот подход с регулярным выражением sed + не обнуляет символы в начале любых данных, которые попадают в более чем одну строку.

Еще раз спасибо за вашу помощь в этом. Теперь у меня есть своя консоль XCode / журнал, которую XCode не может испортить.

...