Como tudo o que você está tentando fazer é obter a saída do primeiro comando no segundo comando, é possível executar uma substituição de comando $()
do primeiro comando no segundo comando. Para combiná-los, coloque o primeiro comando no segundo comando em que você deseja que a saída seja, para que você não tenha a necessidade de atribuir a saída do primeiro comando a uma variável e depois colocá-lo no segundo comando.
Primeiro comando:
head -$1 /folder/file | grep $2 | cut -d ',' -f4
Que você sabe que retorna o que você quer. Em seu segundo comando, você sabe que deseja a saída do primeiro comando em um local específico, como onde o $1
está localizado no segundo comando.
Segundo comando:
echo "$1:x:50$int" >> /etc/group
Como $1
é o que você deseja substituir no segundo comando, substitua o $1
pela substituição do comando e o comando do primeiro como este:
echo "$(head -$1 /folder/file | grep $2 | cut -d ',' -f4):x:50$int" >> /etc/group
Espero que isso ajude!