Mam scenariusz
Chcę uzyskać wszystkich moich zwykłych użytkowników od /etc/shadow
np. Wszystkich użytkowników, których drugi termin w pliku cienia zaczyna się od $
lub !$
.
Mój wzór to
sudo getent shadow | awk -F: '$2 ~ /^$/ || /^!$/ {print $1}'
Na razie nie działa.
Odpowiedzi:
Musisz uciec
$
, ponieważ jest to specjalny znak dla „End of Line”, podobnie jak^
„Beginning of Line”.źródło
awk -F: '$2 ~ /^!?\$/ {print $1}'
- Łączy dwa testy dopasowania i mówi „dopasuj znak dolara na początku pola, opcjonalnie (?
) poprzedzony przez!
”Wszystkich użytkowników z ustawionym hasłem można wymienić w następujący sposób:
źródło