Próbuję masowo ustawić kilka haseł do kont użytkowników chpasswd. Hasła powinny być generowane losowo i drukowane na stdout(muszę je zapisać lub umieścić w magazynie haseł), a także przekazywane do chpasswd.
Naiwnie zrobiłbym to w ten sposób
{
echo student1:$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 13 ; echo '')
echo student2:$(head /dev/urandom | tr -dc A-Za-z0-9 | head -c 13 ; echo '')
} | tee >(chpasswd)
Jednak martwię się o przekazanie nowego hasła jako argumentu wiersza poleceń echo, ponieważ argumenty są zwykle widoczne dla innych użytkowników w ps -aux(chociaż nigdy nie widziałem, aby echopojawiał się w nim jakikolwiek wiersz ps).
Czy istnieje alternatywny sposób przygotowania wartości do mojego zwróconego hasła, a następnie przekazania go do chpasswd?
echojest wbudowaną powłoką. Nie pojawi się w tabeli procesów.