CentOS требует root pw для изменения сетевых настроек

. Вы можете использовать sed для «редактирования» каждой строки, добавив требуемый суффикс:

find subprojects -mindepth 1 -maxdepth 1 | sed 's!$!/test.sh!'

Обычный разделитель для sed - / , но я использовал ! , потому что подстановка уже содержит / , и я не хотел, чтобы в результате были \ / визуальные конструкции ( sed 's / $ / \ / test.sh/' ).

Если вы ищете файлы, которые могут существовать или еще не существуют, но будут, вам, вероятно, следует ограничить свой find выбор только каталогов с помощью find subprojects -mindepth 1 - maxdepth 1 -type d


В комментариях вы также спрашиваете, как поместить это в одну строку. Если ни один из ваших аргументов не содержит пробелов (например, subprojects / some where / test.sh ), вы можете передать результат в xargs .

2
04.05.2016, 02:51
1 ответ

Быстрый способ обойти это - (при условии наличия соответствующих прав sudoers ) добавить к соответствующей команде префикс ] sudo , например

sudo system-config-users

В противном случае, немного покопавшись:

% ls -l =system-config-users
lrwxrwxrwx 1 root root 13 Jul 24  2015 /usr/bin/system-config-users -> consolehelper

Что, если еще немного покопаться, вызывает программу userhelper , руководство которой содержит этот лакомый кусочек:

   UGROUPS
          A comma-separated list of groups whose members will be authenti-
          cated as if USER were set to the special value  <user>.  If  the
          invoking  user  is not a member of one of these groups, the name
          defined in USER will be used as  normal.

Centos 7, кажется, устанавливает колесо по умолчанию:

# cat /etc/security/console.apps/config-util 
USER=root
UGROUPS=wheel
#

Таким образом, теоретически, если ваш пользователь входит в группу wheel , эти запросы пароля должны запрашивать ваш пароль. Входит ли ваш пользователь в группу wheel ?

0
27.01.2020, 22:47

Теги

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