Было:
lara:x:1005:1006::/home/lara:/bin/bash
oracle:x:1006:1007::/home/oracle:/bin/bash
systemd-bus-proxy:x:998:216:systemd Bus Proxy:/:/sbin/nologin
systemd-network:x:997:215:systemd Network Management:/:/sbin/nologin
Надо получить:
:x:1005:1006::/home/lara:/bin/bash
:x:1006:1007::/home/oracle:/bin/bash
:x:998:216:systemd Bus Proxy:/:/sbin/nologin
:x:997:215:systemd Network Management:/:/sbin/nologin
Я написал:
cat /etc/passwd | sed "s/^[a-zA-Z]*:/:/g"
Работает, но проблемы возникают с systemd-network из-за -. Экранирую:
cat /etc/passwd | sed "s/^[a-zA-Z/-]*:/:/g"
Всё работает. а что, если ещё там будут символ _? Этот код не работает:
cat /etc/passwd | sed "s/^[a-zA-Z\-\_]*:/:/g"
Как сделать, чтобы он удалял -_ и т.д.?