Я просто обнаружил, что могу выполнить это с 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"
Если у Вас нет потребности сделать это с 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
. Это, конечно, благодаря чрезвычайно простому формату Ваших данных.
Что-то вроде этого сделает то, что Вы хотите:
$ 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