Как распечатать столбцы из файла с разделителем?

Из:

pa: Pensilvania:145
mo:Misuri:50
va:Virginia:20

Печать 1:

pa:
mo:
va:

Печать 2:

pa: Pensilvania
mo: Misuri
va:Virginia

sed или cut будут предпочтительными.

0
задан 2 January 2018 в 04:28

1 ответ

Вот один из способов:

$ awk -F: '{print $1 FS}' file
pa:
mo:
va:

и

$ awk -F: '{print $1 FS $2}' file
pa: Pensilvania
mo:Misuri
va:Virginia

Если вы предпочитаете cut, второй вариант прост:

$ cut -d: -f1,2 file
pa: Pensilvania
mo:Misuri
va:Virginia

Чтобы получить конечный разделитель, который вы хотите в первом случае, вы можете использовать paste:

$ cut -d: -f1 file | paste -d: - /dev/null
pa:
mo:
va:

OTOH этот легко с sed:

$ sed 's/:.*/:/' file
pa:
mo:
va:

в то время как второе требует немного больше мысли:

$ sed 's/:[^:]*//2' file
pa: Pensilvania
mo:Misuri
va:Virginia
2
ответ дан 2 January 2018 в 04:28

Другие вопросы по тегам:

Похожие вопросы: