Использование нескольких команд sed
Привет я ищу для поиска в файле и выводить значения строки, которая соответствует следующему регулярному выражению с удалением соответствующего текста, мне не нужно выводить его в файл. Это то, что я сейчас использую, и выводит необходимый текст, но несколько раз:
#!/bin/sh
for file in *; do
sed -e 's/^owner //g;p;!d ; s/^admin //g;p;!d ; s/^loc //g;p;!d ; s/^ser //g;p;!d' $file
done
Предпочтительный формат будет примерно таким, чтобы я мог контролировать, что происходит между ними:
for file in *; do
sed 's/^owner //g;p' $file | head -1
sed 's/^admin //g;p' $file | head -1
sed '/^loc //g;p' $file | head -1
sed '/^ser //g;p' $file | head -1
done
Пример входного файла будет следующим:
owner sys group
admin guy
loc Q-30934
ser 18r9723
comment noisy fan is something
и требуемый результат следующий:
sys group
guy
Q-30934
18r9723