строки извлечения согласно конкретному столбцу

Я одолжил правило udev Unia решить мою проблему яркости на запуске. Это закончило тем, что позволило мне (почти) лишенный самому acpid.

SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_ONLINE}=="0", RUN+="/usr/bin/powersave true"
SUBSYSTEM=="power_supply", ENV{POWER_SUPPLY_ONLINE}=="1", RUN+="/usr/bin/powersave false"
KERNEL=="sr0", SUBSYSTEM=="block", ENV{POWER_SUPPLY_ONLINE}=="0", ENV{UDISKS_DISABLE_POLLING}="1"
KERNEL=="sr0", SUBSYSTEM=="block", ENV{POWER_SUPPLY_ONLINE}=="1", ENV{UDISKS_DISABLE_POLLING}="0"

6
04.09.2014, 19:13
4 ответа

Try:

$ awk -F, '$3 && $3 != " "' file
XYZ,xyz,xyzs
ABC,abc,abcs
PQR,pqr,pqrs

or:

$ awk -F, '$3 ~ /[^[:blank:]]/' file
4
27.01.2020, 20:22

Подход sed :

sed -n '/[^,]*,[^,]*,[^, ]\+/p' file

Или решение grep :

grep -oE '^[^,]*,[^,]*,[^, ]+' file

И awk :

awk -F, '$3 ~ /[^, ]+/' file
7
27.01.2020, 20:22

Используя GNU awk:

awk -F, '$3' input_file
1
27.01.2020, 20:22

Можно сделать что-то подобное в awk :

awk -F',' '{gsub(/[ \t]+$/,"",$3)}$3' foo.csv

Это удалит скользящие белые пробелы и печатать только если в третьем поле что-то осталось.

3
27.01.2020, 20:22

Теги

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