Why is my GID environment variable empty?
8,902
I assume you're using bash as your shell. Bash doesn't set a GID
variable. The list of Bash variables mentions EUID
and UID
, but not GID
.
Zsh, on the other hand, does set GID
:
$ bash -c 'echo $GID'
$ zsh -c 'echo $GID'
1000
Related videos on Youtube
Author by
Corey
Working & Traveling in Canada. I was a cloud engineer, developed backend REST API, optimized the stability of Windows services running on the cloud platform. Automized the generation of Windows images, and maintain automated CI/CD pipelines for code deployment. Skilled in Python, Java, and Scripting, with experience in Openstack and DevOps.
Updated on September 18, 2022Comments
-
Corey over 1 year
I try
echo $GID
but get nothing. However, I can get 1000 by usingid -g
, what's the differences between them ?id -u => 1000 id -g => 1000 echo $UID => 1000 echo $GID =>
The output of
id
:uid=1000(user) gid=1000(user) groups=1000(user),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),113(lpadmin),128(sambashare),999(docker)
The output of
groups
:user adm cdrom sudo dip plugdev lpadmin sambashare docker
Ubuntu version:
Distributor ID: Ubuntu Description: Ubuntu 16.04.6 LTS Release: 16.04 Codename: xenial
-
Corey about 5 yearsWhat's the differences between using
bash -c 'echo $GID'
andecho $GID
in terminal ? -
Olorin about 5 years@Corey
echo $GID
in my terminal would run it in zsh, since I use zsh as my shell. In your terminal, it might be run in bash. I usebash -c ...
to run the command specifically in bash. -
Corey about 5 yearsGot it, thanks. Is there any way in bash to get
GID
exceptid -g
? -
Prvt_Yadav about 5 years@Corey use command
cat /etc/group | grep ^your_group_name | cut -d: -f3
-
Corey about 5 yearsIs it a good idea to use
$GROUPS
as a replacement ? -
Olorin about 5 years@Corey if you're using bash, possibly. But I don't know if it's guaranteed to hold your GID as the first element of the array.