Как узнать, к какой группе вы НЕ принадлежите (противоположность команде groups) — использование sed

sed -e "/$USER/d;s/:.*//g" /etc/group | sed -e :a -e '/$/N;s/\n/ /;ta'


Команда sed используется для обработки текста. В данном случае она применяется дважды.

Первая часть команды (/etc/group | sed -e «/$USER/d;s/:.*//g») удаляет строку, содержащую имя текущего пользователя ($USER), из файла /etc/group. Затем она удаляет все символы после первого двоеточия в каждой оставшейся строке. Это позволяет получить список групп, в которых пользователь не состоит.

Вторая часть команды (sed -e :a -e ‘/$/N;s/\n/ /;ta’) объединяет строки в одну и заменяет символы новой строки на пробелы. Таким образом, вывод команды будет представлять собой список групп, в которых пользователь не состоит, разделенных пробелами.

Альтернативой может быть использование команды awk или grep для обработки текста.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *