Creating new directories


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Creating new directories
# 1  
Old 02-17-2018
Creating new directories

I want to create a new system of directory structure for example

Code:
mkdir -p ./iv.sac/resu/hhz.d

However, I think that `mkdir -p` overwrites the directories. I want to avoid that
and am doing something as follows in my bash script

Code:
echo -e "\nCreating directories:" 
odir_nwk="./iv.sac/resu/hhz.d"
if [ -d "$odir_nwk" ]; then
  echo "Directory already exists: $odir_nwk"
else
  echo "mkdir -p $odir_nwk"
fi

I suppose this will only check if the directory `./iv.sac/resu/hhz.d`
exists but might overwrite `./iv.sac/resu` for example.

Would like to make this foolproof. What can I do?
# 2  
Old 02-17-2018
What do you mean by "overwrite"?

If ./iv.sac/resu/hhz.d exists, so does ./iv.sac/resu and won't be touched.

man mkdir:
Quote:
‘-p’
‘--parents’
Make any missing parent directories for each argument, setting their file permission bits to the umask modified by ‘u+wx’. Ignore existing parent directories, and do not change their file permission bits.
# 3  
Old 02-17-2018
Quote:
Originally Posted by kristinu
I suppose this will only check if the directory `./iv.sac/resu/hhz.d`
exists but might overwrite `./iv.sac/resu` for example.

Would like to make this foolproof. What can I do?
mkdir -p will create intermediary directories only as necessary. That is, it won't try to re-create it if the directory already exists.
This User Gave Thanks to milhan For This Post:
# 4  
Old 02-17-2018
Possible Problems to avoid

Many directories will be created and I want to avoid a situation where
if there is a mistake the user might loose any directories or files.
# 5  
Old 02-17-2018
I don't really follow you. Nothing will be lost with 'mkdir', despite your earlier assertion that "I think that `mkdir -p` overwrites the directories. I want to avoid that". mkdir doesn't do anything except make directiories. It doesn't delete anything.

It's a Unix thing - 'do one thing, and do it well' Smilie
This User Gave Thanks to Scott For This Post:
# 6  
Old 02-17-2018
No problem

Quote:
Originally Posted by Scott
I don't really follow you. Nothing will be lost with 'mkdir', despite your earlier assertion that "I think that `mkdir -p` overwrites the directories. I want to avoid that". mkdir doesn't do anything except make directiories. It doesn't delete anything.

It's a Unix thing - 'do one thing, and do it well' Smilie
Not an assertion, just a clarification. Sometime there might be some option or whatever to delete things. But as you mention it's ok.
# 7  
Old 02-18-2018
Quote:
Originally Posted by kristinu
Not an assertion, just a clarification. Sometime there might be some option or whatever to delete things. But as you mention it's ok.
It is always a good idea to make use of the man pages on the system you are using those unix commands.
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Problem creating a tar ball in different directories

Hi all. I'm hitting a problem creating a tar archive in one directory from files located in a different directory. It fails when I replace the absolute paths with variables in the script but works if I just run tar on the cmdln. E.g. #!/bin/ksh BASE=$PWD STAGE=$BASE/stage LOG=$BASE/log... (4 Replies)
Discussion started by: user052009
4 Replies

2. Shell Programming and Scripting

Archiving and moving files into directories, creating directories, etc.

how can i move "dataName".sql.gz into a folder called 'database' and then move "$fileName".tar.gz * .htaccess into a folder called 'www' with the entire gzipped file being "$fileName".tar.gz? Is this doable or overly complex. so mydemo--2015-03-23-1500.tar.gz > database -... (5 Replies)
Discussion started by: wyclef
5 Replies

3. Shell Programming and Scripting

need help with creating directories and variables

i'm trying to write a script that has 2 variables, and uses the 1st variable as a number and the 2nd a name to create directories. so if you typed in ./myscript 5 week, it would create 5 directories named week1 - week5. whenever i run this, i get an error message saying week5 already exists, so i... (3 Replies)
Discussion started by: layne2kim
3 Replies

4. Shell Programming and Scripting

Creating timestamped directories/files in expect

Hi, I am looking for the syntax to provide a timestamped log_file in expect. Basically I want the equivalent of: /outputs/`date +%d%m%y`/session`date +%H%M` But scripted in expect so it can be handed over to the logfile function. I have tried playing around with the timestamp... (1 Reply)
Discussion started by: krypton
1 Replies

5. Shell Programming and Scripting

Problem with array and creating directories

I have an interesting requirement. I have declaried an array like :- arr=`find . ! -name "." | xargs -I {} echo {} | cut -c 2-${#}` Then i will try to access the array elements like :- i=0 for i in ${arr}; do Here comes the confusions, the array elements are basically dir and files stored... (2 Replies)
Discussion started by: Renjesh
2 Replies

6. Homework & Coursework Questions

Creating directories within a directory?

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: Ok i need to create a directory within another directory in one command. I'm already in a directory to. I need to... (6 Replies)
Discussion started by: gangsta
6 Replies

7. Shell Programming and Scripting

Creating Directories

I have many pdf files with similar naming conventions as this one: AC41_AC85_86_AC128_129_MC171_173_SF_207_FMV.pdf. It is a pdf file containing evaluations for these locations: AC41, AC85, AC86, AC128, AC129, MC171, and MC173. I want to create a directory for every location and put the... (3 Replies)
Discussion started by: ndnkyd
3 Replies

8. Shell Programming and Scripting

help needed with creating challenging bash script with creating directories

Hi, Can someone help me with creating a bash shell script. I need to create a script that gets a positive number n as an argument. The script must create n directories in the current directory with names like map_1, map_2 etcetera. Each directory must be contained within its predecessor. So... (7 Replies)
Discussion started by: I-1
7 Replies

9. HP-UX

creating directories on the same box

I have two login accounts 'fup04a' and 'fup04c' on the same unix box after log in using 'fup04a' and if I try creating a directory 'new' drwxrwxr-x 2 fup04a fup04a 4096 Nov 14 14:06 new but if i try the same with fup04c drw-rw-r-x 2 fup04c fup04c 4096 Nov 14... (3 Replies)
Discussion started by: vivek_damodaran
3 Replies

10. UNIX for Dummies Questions & Answers

creating directories

how do i create directories using command in my unix system, i could do with knowing how to do it with absolute pathnames and relative pathnames please (3 Replies)
Discussion started by: carlvernon
3 Replies
Login or Register to Ask a Question