$ tr -dc "\n0-9_" < input | awk -F_ '{print $2,$3}'
4 0
4 45
4 45
4 0
docker exec
просто запускает процесс в существующем пространстве имен. Вы не входите в контейнер, а просто вызываете команду, принадлежащую определенному пользователю. Docker не запустит процесс входа в систему, если вы просто скажете ему запустить bash
.
Чтобы получить полностью работающий процесс входа в систему в Docker, вам нужно запустить какую-либо службу входа в систему, такую как ssh, mgetty, gdm или просто login foo
. В большинстве случаев он будет проходить через стек PAM, и pam _unix будет читать pwent, и вход в систему не сможет начать сеанс.