Принудительно установить строку как контекст SELinux файла

sed -i -e '/^#!/p' -e '/^#/d' file

Это будет проходить через файл построчно и находит строку, начинающуюся с #! будет напечатано первым выражением. Затем он будет удален из пространства шаблонов вторым выражением (т. е. он не будет напечатан через секундураз командой по умолчанию p, которая действует, когда не используется sed -n).

Строка, начинающаяся только с #, будет игнорироваться первым выражением, но удаляться вторым выражением.

Любая другая строка будет напечатана командой по умолчанию p.

Чтобы разрешить пробелы перед #(а также удалить эти строки):

sed -i -e '/^[[:blank:]]*#!/p' -e '/^[[:blank:]]*#/d' file

Выражение [[:blank:]]будет соответствовать пробелу или табуляции. персонаж.


Как упомянул Стефан, это комментарии, изменение pна bв первом выражении позволит сценарию sedпродолжить работу со следующей строкой ввода без учета второе выражение, если первое выражение совпадает. Команда bпереходит к предопределенной метке или к концу сценария sed, если метка не указана. Это будет оптимизация.

1
07.04.2017, 16:07
1 ответ
sudo setfattr -n security.selinux -v u:object_r:system_file:s0 'path/fileName'

вам может потребоваться сначала установить attrи посмотреть официальные документы

0
28.01.2020, 00:57

Теги

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