Используя AWK, чтобы удалить строку и произвести результат

Я просто обнаружил, что могу выполнить это с dbus-launch управляйте также, вместо того, чтобы пытаться найти X сессий, к которым можно присоединить.

Я могу обновить настройки Gnome для root/gdm/, кто бы ни еще со следующим шаблоном:

sudo sudo -u gdm dbus-launch gsettings set org.gnome.settings-daemon.plugins.power lid-close-ac-action "blank"
0
27.01.2014, 23:12
2 ответа

Если у Вас нет потребности сделать это с awk, Вы могли бы хотеть попробовать что-то grep и sed:

if grep -E "(KungFu Feet|Chuck Norris)" your_file ; then
    # fancy stuff in case string has been matched
    sed -r "/(KungFu Feet|Chuck Norris)/d" < your_file > new_file
else
    # fancy stuff in case it hasn't
fi

Если Вам нужен POSIX sed совместимость, необходимо будет развернуть regex для sed (grep в недавнем POSIX версии поддерживает -E опция):

sed -r "/KungFu Feet/d;/Chuck Norris/d" < your_file > new_file

Некоторая версия sed также позвольте оперативные изменения через -i опция.

Перечитывая ответ, необходимо было бы, вероятно, соответствовать просто "KungFu Feet:Chuck Norris" в обоих sed и grep. Это, конечно, благодаря чрезвычайно простому формату Ваших данных.

1
28.01.2020, 02:28

Что-то вроде этого сделает то, что Вы хотите:

$ awk -F ':' '!/KungFu Feet|Chuck Norris/'  test.txt | tee newtest.txt
KungFa Feet|Chuck Narris:12:1:1
KungFe Feet|Chuck Nerris:12:1:1

Новый файл

$ cat newtest.txt 
KungFa Feet|Chuck Narris:12:1:1
KungFe Feet|Chuck Nerris:12:1:1
2
28.01.2020, 02:28
  • 1
    Большое спасибо. но я хотел бы произвести, если еще оператор с эхом так, "если ($Book = "Ноги KungFu" && $Author = "Chuck Norris") повторяют Объект, найденный, удаляя еще использующий awk Объект, не найденный. –  Len 27.01.2014, 19:21
  • 2
    @LennonChia - я могу спросить почему? Не будучи мудрым, мне обычно любопытно относительно того, почему Вы хотите это по тому, что я отправил. Я задаюсь вопросом, существует ли больше к Вашим конечным целям с Вашим вопросом также. –  slm♦ 27.01.2014, 19:25
  • 3
    это работает большое спасибо за то, что был так полезен, но я хотел бы сделать проверку на своем сценарии оболочки, прежде чем я сделаю awk, удаляет. таким образом, когда пользователь вводит книгу и автора, там будет проверка, прежде чем я сделаю awk удаляет. Я все еще застреваю, пытаясь выяснить, как сделать это с помощью удара. Но я надеюсь учиться использовать awk также. Я сожалею, если я могу производить неправильное впечатление, я все еще пытаюсь изучить часть основного удара, awk и функция sed. –  Len 27.01.2014, 19:28
  • 4
    @LennonChia - мой пример не делает a awk удалите, просто создает 2-й файл. –  slm♦ 27.01.2014, 19:31
  • 5
    я могу переименовать файл так это хорошо и удалить старый файл :) –  Len 27.01.2014, 19:39

Теги

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