Hi, I'm currently writing an install script for an application, and my already limited Bash skills are a bit rusty. I want to check if a group exists, and if it doesn't, then create it. Only thing I found is: if [ grep medintux /etc/group ]; then continue else groupadd medintux fi Apparently I can't seem to "negate" the test, e. g. something like if !(grep medintux /etc/group) Any suggestions for the correct syntax here ? Thanks, Niki
On Mon, 2010-03-01 at 17:03 +0100, Niki Kovacs wrote:> Hi, > > I'm currently writing an install script for an application, and my > already limited Bash skills are a bit rusty. > > I want to check if a group exists, and if it doesn't, then create it. > > Only thing I found is: > > if [ grep medintux /etc/group ]; then > continue > else > groupadd medintux > fi > > Apparently I can't seem to "negate" the test, e. g. something like > > if !(grep medintux /etc/group) > > Any suggestions for the correct syntax here ? >Try this: grep -q medintux /etc/group || groupadd medintux> Thanks, > > Niki > _______________________________________________ > CentOS mailing list > CentOS at centos.org > http://lists.centos.org/mailman/listinfo/centos-- Ron Loftin reloftin at twcny.rr.com "God, root, what is difference ?" Piter from UserFriendly
2010/3/1 Niki Kovacs <contact at kikinovak.net>:> Hi, > > I'm currently writing an install script for an application, and my > already limited Bash skills are a bit rusty. > > I want to check if a group exists, and if it doesn't, then create it. > > Only thing I found is: > > if [ grep medintux /etc/group ]; then > ? ? ? ?continue > else > ? ? ? ?groupadd medintux > fi > > Apparently I can't seem to "negate" the test, e. g. something like > > if !(grep medintux /etc/group) > > Any suggestions for the correct syntax here ? > > Thanks, > > NikiWhy don't you use groupadd -f ? It will not override the group if it already exists, and shortens the code :) Laurent
Frank.Brodbeck at klingel.de
2010-Mar-01 16:09 UTC
[CentOS] RE: Slightly OT: check creation of a group
grep medintux /etc/group || groupadd medintux or in a if operation: if [[ ! grep medintux /etc/group ]] then groupadd medintux fi Regards, Frank. Niki Kovacs <contact at kikinovak.net> schrieb am 01.03.2010 17:03:46:> Hi, > > I'm currently writing an install script for an application, and my > already limited Bash skills are a bit rusty. > > I want to check if a group exists, and if it doesn't, then create it. > > Only thing I found is: > > if [ grep medintux /etc/group ]; then > continue > else > groupadd medintux > fi > > Apparently I can't seem to "negate" the test, e. g. something like > > if !(grep medintux /etc/group) > > Any suggestions for the correct syntax here ? > > Thanks, > > Niki > _______________________________________________ > CentOS mailing list > CentOS at centos.org > http://lists.centos.org/mailman/listinfo/centos
> Apparently I can't seem to "negate" the test, e. g. something like > > if !(grep medintux /etc/group) > > Any suggestions for the correct syntax here ? >I'd do it like this: grep medintux /etc/group if [ $? != 0 ]; then echo "Group not found" fi --------------------------------- Geoff Galitz Blankenheim NRW, Germany http://www.galitz.org/ http://german-way.com/blog/
Niki wrote:> > I'm currently writing an install script for an application, and my > already limited Bash skills are a bit rusty. > > I want to check if a group exists, and if it doesn't, then create it. > > Only thing I found is: > > if [ grep medintux /etc/group ]; then > continue > else > groupadd medintux > fi >Why not if [ `grep -c medintux /etc/group` == 0 ]; then groupadd medintux fi ? mark