How to check if a new username is a system user?A command to list all users? And how to add, delete, modify users?Command to list all users with their UID?How to find out who is using the physical console?How to stock all files with the same suffix into a table?Using grep in /etc/passwd to fetch list of users and system users, discriminating both~ as directory nameWhen I use Bash on Ubuntu on Windows (Ubuntu built into Windows 10), where is my Windows root filesystem (e.g. C drive)?Locked out of sudo in main host after firejail sandboxingHow to get BASH to use * wildcard in command?Restrict user from changing to a directory outside of /home/usernameSharing files with Win10/bash shellExecute python3 filename after creating new user and with skeleton folder
Was Apollo 13 radio blackout on reentry longer than expected?
Intel 8080-based home computers
How to color a tag in a math equation?
How possible is a successful landing just with 1 wing?
Did Voldemort kill his father before finding out about Horcruxes?
what relax command means?
Is straight-up writing someone's opinions telling?
A verb to describe specific positioning of three layers
Improve quality of image bars
How to check if a new username is a system user?
Increasing muscle power without increasing volume
Can a Resident Assistant be told to ignore a lawful order?'
Is there a typesafe way to get a Database.QueryLocator?
Cover a cube with four-legged walky-squares!
How to have a continuous player experience in a setting that's likely to favor TPKs?
Generating a PIN from cryptographic bytes
How to honestly answer questions from a girlfriend like "How did you find this place" without giving the impression I'm always talking about my exes?
Create Array from list of indices/values
Why does "git status" show I'm on the master branch and "git branch" does not in a newly created repository?
How to remove the first colon ':' from a timestamp?
At which point can a system be compromised when downloading archived data from an untrusted source?
What is the difference between a Hosaka, Ono-Sendai, and a "deck"?
A scene of Jimmy diversity
Why does FFmpeg choose 10+20+20 ms instead of an even 16 ms for 60 fps GIF images?
How to check if a new username is a system user?
A command to list all users? And how to add, delete, modify users?Command to list all users with their UID?How to find out who is using the physical console?How to stock all files with the same suffix into a table?Using grep in /etc/passwd to fetch list of users and system users, discriminating both~ as directory nameWhen I use Bash on Ubuntu on Windows (Ubuntu built into Windows 10), where is my Windows root filesystem (e.g. C drive)?Locked out of sudo in main host after firejail sandboxingHow to get BASH to use * wildcard in command?Restrict user from changing to a directory outside of /home/usernameSharing files with Win10/bash shellExecute python3 filename after creating new user and with skeleton folder
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
I want to create a script that change a username.
I want to check if the user is not a system user.
My idea is to check /etc/passwd and pick only users with an ID between 1000 and 60000 and users that have a /home directory like
user:x:1005:1021::/home/user:/bin/sh
My grep command for now is like
egrep -E '1[0-9]3.*/home' /etc/passwd
As you can see, it doesn't match my [1000-60000] pattern nor the name
command-line
New contributor
add a comment |
I want to create a script that change a username.
I want to check if the user is not a system user.
My idea is to check /etc/passwd and pick only users with an ID between 1000 and 60000 and users that have a /home directory like
user:x:1005:1021::/home/user:/bin/sh
My grep command for now is like
egrep -E '1[0-9]3.*/home' /etc/passwd
As you can see, it doesn't match my [1000-60000] pattern nor the name
command-line
New contributor
Minor point:grep -E
is the same thing asegrep
. There's no point in using both (egrep -E
), just usegrep -E
.
– terdon♦
9 hours ago
add a comment |
I want to create a script that change a username.
I want to check if the user is not a system user.
My idea is to check /etc/passwd and pick only users with an ID between 1000 and 60000 and users that have a /home directory like
user:x:1005:1021::/home/user:/bin/sh
My grep command for now is like
egrep -E '1[0-9]3.*/home' /etc/passwd
As you can see, it doesn't match my [1000-60000] pattern nor the name
command-line
New contributor
I want to create a script that change a username.
I want to check if the user is not a system user.
My idea is to check /etc/passwd and pick only users with an ID between 1000 and 60000 and users that have a /home directory like
user:x:1005:1021::/home/user:/bin/sh
My grep command for now is like
egrep -E '1[0-9]3.*/home' /etc/passwd
As you can see, it doesn't match my [1000-60000] pattern nor the name
command-line
command-line
New contributor
New contributor
New contributor
asked 9 hours ago
danasodanaso
182 bronze badges
182 bronze badges
New contributor
New contributor
Minor point:grep -E
is the same thing asegrep
. There's no point in using both (egrep -E
), just usegrep -E
.
– terdon♦
9 hours ago
add a comment |
Minor point:grep -E
is the same thing asegrep
. There's no point in using both (egrep -E
), just usegrep -E
.
– terdon♦
9 hours ago
Minor point:
grep -E
is the same thing as egrep
. There's no point in using both (egrep -E
), just use grep -E
.– terdon♦
9 hours ago
Minor point:
grep -E
is the same thing as egrep
. There's no point in using both (egrep -E
), just use grep -E
.– terdon♦
9 hours ago
add a comment |
1 Answer
1
active
oldest
votes
You can use awk
to find local users with id >= 1000:
awk -F: '$3>=1000 && $3!=65534 print $1' /etc/passwd
To also check for a home folder below /home
:
awk -F: '$3>=1000 && $3 != 65534 && $6 ~ /^/home/ print $1' /etc/passwd
Replace /etc/passwd
with <(getent passwd)
to list all users including network accounts ...
See also this related question, as well as this one.
Thanks! but how can I merge all my patterns e.g name + ID + /home?
– danaso
9 hours ago
You're amazing! thanks!
– danaso
9 hours ago
2
Mind that this does not list LDAP users so is only useable for local users :)
– Rinzwind
9 hours ago
Thanks @Rinzwind. I didn't know
– danaso
9 hours ago
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "89"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
danaso is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1158967%2fhow-to-check-if-a-new-username-is-a-system-user%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
You can use awk
to find local users with id >= 1000:
awk -F: '$3>=1000 && $3!=65534 print $1' /etc/passwd
To also check for a home folder below /home
:
awk -F: '$3>=1000 && $3 != 65534 && $6 ~ /^/home/ print $1' /etc/passwd
Replace /etc/passwd
with <(getent passwd)
to list all users including network accounts ...
See also this related question, as well as this one.
Thanks! but how can I merge all my patterns e.g name + ID + /home?
– danaso
9 hours ago
You're amazing! thanks!
– danaso
9 hours ago
2
Mind that this does not list LDAP users so is only useable for local users :)
– Rinzwind
9 hours ago
Thanks @Rinzwind. I didn't know
– danaso
9 hours ago
add a comment |
You can use awk
to find local users with id >= 1000:
awk -F: '$3>=1000 && $3!=65534 print $1' /etc/passwd
To also check for a home folder below /home
:
awk -F: '$3>=1000 && $3 != 65534 && $6 ~ /^/home/ print $1' /etc/passwd
Replace /etc/passwd
with <(getent passwd)
to list all users including network accounts ...
See also this related question, as well as this one.
Thanks! but how can I merge all my patterns e.g name + ID + /home?
– danaso
9 hours ago
You're amazing! thanks!
– danaso
9 hours ago
2
Mind that this does not list LDAP users so is only useable for local users :)
– Rinzwind
9 hours ago
Thanks @Rinzwind. I didn't know
– danaso
9 hours ago
add a comment |
You can use awk
to find local users with id >= 1000:
awk -F: '$3>=1000 && $3!=65534 print $1' /etc/passwd
To also check for a home folder below /home
:
awk -F: '$3>=1000 && $3 != 65534 && $6 ~ /^/home/ print $1' /etc/passwd
Replace /etc/passwd
with <(getent passwd)
to list all users including network accounts ...
See also this related question, as well as this one.
You can use awk
to find local users with id >= 1000:
awk -F: '$3>=1000 && $3!=65534 print $1' /etc/passwd
To also check for a home folder below /home
:
awk -F: '$3>=1000 && $3 != 65534 && $6 ~ /^/home/ print $1' /etc/passwd
Replace /etc/passwd
with <(getent passwd)
to list all users including network accounts ...
See also this related question, as well as this one.
edited 9 hours ago
answered 9 hours ago
pLumopLumo
10k21 silver badges48 bronze badges
10k21 silver badges48 bronze badges
Thanks! but how can I merge all my patterns e.g name + ID + /home?
– danaso
9 hours ago
You're amazing! thanks!
– danaso
9 hours ago
2
Mind that this does not list LDAP users so is only useable for local users :)
– Rinzwind
9 hours ago
Thanks @Rinzwind. I didn't know
– danaso
9 hours ago
add a comment |
Thanks! but how can I merge all my patterns e.g name + ID + /home?
– danaso
9 hours ago
You're amazing! thanks!
– danaso
9 hours ago
2
Mind that this does not list LDAP users so is only useable for local users :)
– Rinzwind
9 hours ago
Thanks @Rinzwind. I didn't know
– danaso
9 hours ago
Thanks! but how can I merge all my patterns e.g name + ID + /home?
– danaso
9 hours ago
Thanks! but how can I merge all my patterns e.g name + ID + /home?
– danaso
9 hours ago
You're amazing! thanks!
– danaso
9 hours ago
You're amazing! thanks!
– danaso
9 hours ago
2
2
Mind that this does not list LDAP users so is only useable for local users :)
– Rinzwind
9 hours ago
Mind that this does not list LDAP users so is only useable for local users :)
– Rinzwind
9 hours ago
Thanks @Rinzwind. I didn't know
– danaso
9 hours ago
Thanks @Rinzwind. I didn't know
– danaso
9 hours ago
add a comment |
danaso is a new contributor. Be nice, and check out our Code of Conduct.
danaso is a new contributor. Be nice, and check out our Code of Conduct.
danaso is a new contributor. Be nice, and check out our Code of Conduct.
danaso is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to Ask Ubuntu!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2faskubuntu.com%2fquestions%2f1158967%2fhow-to-check-if-a-new-username-is-a-system-user%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Minor point:
grep -E
is the same thing asegrep
. There's no point in using both (egrep -E
), just usegrep -E
.– terdon♦
9 hours ago