LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Non-*NIX Forums > Programming
User Name
Password
Programming This forum is for all programming questions.
The question does not have to be directly related to Linux and any language is fair game.

Notices


Reply
  Search this Thread
Old 07-11-2014, 12:52 PM   #1
looop
Member
 
Registered: Oct 2011
Location: Denmark
Distribution: Fedora, Ubunut, macOS Mojave, RedHat, OpenBSD
Posts: 78

Rep: Reputation: Disabled
BASH: check if dir do not exist - fails


Hey I want to create a dir, if it do not exist.
What I have is this
Code:
if  [ ! -d "$/usr/lib/ninja" ] && [ ! -d "$/usr/include/ninja"]; then
    mkdir /usr/lib/ninja
    echo "ninja library has been created in /usr/lib"
    mkdir /usr/include/ninja
    echo "ninja library has been created in /usr/include"

else
    echo ninja code library already existing
fi
WHAT THE f. is wrong
 
Old 07-11-2014, 12:58 PM   #2
szboardstretcher
Senior Member
 
Registered: Aug 2006
Location: Detroit, MI
Distribution: GNU/Linux systemd
Posts: 4,278

Rep: Reputation: 1694Reputation: 1694Reputation: 1694Reputation: 1694Reputation: 1694Reputation: 1694Reputation: 1694Reputation: 1694Reputation: 1694Reputation: 1694Reputation: 1694
remove the money sign?

Also instead of using && you will want to use ||.

Last edited by szboardstretcher; 07-11-2014 at 12:59 PM.
 
1 members found this post helpful.
Old 07-11-2014, 12:58 PM   #3
jailbait
LQ Guru
 
Registered: Feb 2003
Location: Virginia, USA
Distribution: Debian 12
Posts: 8,336

Rep: Reputation: 548Reputation: 548Reputation: 548Reputation: 548Reputation: 548Reputation: 548
What are the results when neither directory exists?

What are the results when both directories exist?

What are the results when $/usr/lib/ninja exists and $/usr/include/ninja does not exist?

What are the results when $/usr/include/ninja exists and $/usr/lib/ninja does not exist?

---------------------------
Steve Stites
 
Old 07-11-2014, 01:16 PM   #4
looop
Member
 
Registered: Oct 2011
Location: Denmark
Distribution: Fedora, Ubunut, macOS Mojave, RedHat, OpenBSD
Posts: 78

Original Poster
Rep: Reputation: Disabled
Thank you very much solved it
 
Old 07-22-2014, 04:35 AM   #5
bigearsbilly
Senior Member
 
Registered: Mar 2004
Location: england
Distribution: Mint, Armbian, NetBSD, Puppy, Raspbian
Posts: 3,515

Rep: Reputation: 239Reputation: 239Reputation: 239
you may as well:
mkdir -p /blah/blah
and you won't get an error if it already exists.

mkdir is checking for existence anyway, little point in you doing it too.
 
1 members found this post helpful.
Old 07-22-2014, 05:20 AM   #6
pan64
LQ Addict
 
Registered: Mar 2012
Location: Hungary
Distribution: debian/ubuntu/suse ...
Posts: 21,811

Rep: Reputation: 7306Reputation: 7306Reputation: 7306Reputation: 7306Reputation: 7306Reputation: 7306Reputation: 7306Reputation: 7306Reputation: 7306Reputation: 7306Reputation: 7306
and, if you want a report (about creating dirs): mkdir -pv /what/ever/you/need
 
Old 07-25-2014, 01:05 PM   #7
rtmistler
Moderator
 
Registered: Mar 2011
Location: USA
Distribution: MINT Debian, Angstrom, SUSE, Ubuntu, Debian
Posts: 9,883
Blog Entries: 13

Rep: Reputation: 4930Reputation: 4930Reputation: 4930Reputation: 4930Reputation: 4930Reputation: 4930Reputation: 4930Reputation: 4930Reputation: 4930Reputation: 4930Reputation: 4930
Quote:
Originally Posted by bigearsbilly View Post
you may as well:
mkdir -p /blah/blah
and you won't get an error if it already exists.

mkdir is checking for existence anyway, little point in you doing it too.
Using the -p option would be my first choice. If I were to leave the check for existence in, I would not do a compound if statement. Test each directory individually and create versus not if you still wish to test.
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Bash: Check if a screen exist fatalerror0x00 Programming 2 11-05-2012 10:58 AM
Create dir at logon (if it doesn't already exist) dsdonut Linux - General 5 10-16-2012 09:47 AM
Check if directory DOES NOT exist in BASH Drigo Linux - Newbie 12 05-03-2012 06:35 AM
test for a dir exist zimbot Programming 2 02-22-2011 05:14 PM
Home dir dosen't appear to exist when booting new kernel JLDohm Linux - Newbie 13 02-01-2005 06:31 PM

LinuxQuestions.org > Forums > Non-*NIX Forums > Programming

All times are GMT -5. The time now is 09:33 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration