Как добавить вывод команды к имени группы в сценарии? [duplicate]

На этот вопрос уже есть ответ здесь:

Я вручную создаю версию useradd, и на данный момент я пытаюсь получить вывод этой команды:

head -$1 /folder/file | grep $2 | cut -d ',' -f4

и ввести его в эту команду:

echo "$1:x:50$int" >> /etc/group

где $1. По сути, первая команда извлекает имя компании, и я хочу добавить ее в группу. У меня уже настроен идентификатор группы.

0
задан 19 February 2017 в 15:32

1 ответ

Так как все, что Вы пытаетесь сделать, должно получить вывод первой команды во вторую команду, можно сделать это с выполнением замены команды $() из первой команды во вторую команду. Для объединения они вместе помещают первую команду во вторую команду, где Вы хотите, чтобы вывод был так, чтобы у Вас не было потребности присвоения вывода первой команды в переменную, затем помещая во вторую команду.

команда First:

head -$1 /folder/file | grep $2 | cut -d ',' -f4

, Что Вы знаете возвраты, что Вы хотите. В Вашей второй команде Вы знаете о желании вывода первой команды в определенном месте как то, где эти $1 расположен во второй команде.

команда Second:

echo "$1:x:50$int" >> /etc/group

С тех пор $1 то, что Вы хотите заменить во второй команде, Вы затем заменили бы $1 заменой команды и командой первой как это:

echo "$(head -$1 /folder/file | grep $2 | cut -d ',' -f4):x:50$int" >> /etc/group

Hope это помогает!

2
ответ дан 3 November 2019 в 17:44

Другие вопросы по тегам:

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