Creating a new directory by getting input from user


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Creating a new directory by getting input from user
# 8  
Old 02-08-2014
Quote:
Originally Posted by Pradeep_1990
Thanks a lot Guys..

@wisecrackerSmiliene question though..

if [ -d "${drawer}" ]

What does this line do ?

Thanks all again..Smilie
"if" is obvious.
"[" means the same as the command "test" as in here:-
Code:
Last login: Sat Feb  8 15:21:40 on ttys000
AMIGA:barrywalker~> drawer="/Users/barrywalker/Desktop/Code"
AMIGA:barrywalker~> if test -d "$drawer"
> then
> echo "Yup $drawer does exist..."
> fi
Yup /Users/barrywalker/Desktop/Code does exist...
AMIGA:barrywalker~> _

And "-d" is to denote that a directory/drawer/folder is the thing to look for.
"$drawer" could be any absolute or relative path.
The braces "{}" in my first reply are not doing anything in my original case but can
be used for special expansion conditions. (Added for fullness.)
And also I forgot, "]" ends that particular test proceedure...

I will let you research on the curly braces... ;o)

Last edited by wisecracker; 02-08-2014 at 11:55 AM.. Reason: Added the "forgot" bit...
This User Gave Thanks to wisecracker For This Post:
# 9  
Old 02-08-2014
You might want to use:
Code:
if [ -e "$drawer" ]

instead of:
Code:
if [ -d "$drawer" ]

The -e will evaluate to true if any file (whether or not it is a directory) already exists with the given name. A call to mkdir will fail if the target exists even if it is not a directory.
These 4 Users Gave Thanks to Don Cragun For This Post:
# 10  
Old 02-11-2014
Thanks a lot for the reply guys..Smilie
# 11  
Old 02-11-2014
Just a little addition (and using what just learned) :

Code:
read -p "Please enter the dirname to create: " DIRTOCREATE
[ ! -e "$DIRTOCREATE" ] && mkdir -p "$DIRTOCREATE"


Last edited by sea; 02-11-2014 at 05:11 AM.. Reason: Added missing "!", ty bakunin
This User Gave Thanks to sea For This Post:
# 12  
Old 02-11-2014
Quote:
Originally Posted by sea
Code:
[ -e "$DIRTOCREATE" ] && mkdir -p "$DIRTOCREATE"

ahem..

you probably want it the other way round ;-) :

Code:
[ ! -e "$DIRTOCREATE" ] && mkdir -p "$DIRTOCREATE"

bakunin
This User Gave Thanks to bakunin For This Post:
# 13  
Old 02-11-2014
Or:
Code:
[ -e "$DIRTOCREATE" ] || mkdir -p -- "$DIRTOCREATE"

This User Gave Thanks to radoulov For This Post:
# 14  
Old 04-09-2014
Thanks all..Smilie
 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

Prevent user from creating new user from his login

Hi Experts, Need your support Redhat 6.5 I want to create a user with all(read, write, execute) privileges except that user should not be able to create any new user from his login to perform any task. (10 Replies)
Discussion started by: as7951
10 Replies

2. Shell Programming and Scripting

User input and run awk using the input

I am trying to allow a user to enter in text and then store that text in a variable $gene to run in an awk command in which those values are used to run some calculations. I am getting syntax errors however, when I try. Thank you :). The awk runs great if it is a pre-defined file that is used,... (7 Replies)
Discussion started by: cmccabe
7 Replies

3. Shell Programming and Scripting

Creating a script requiring a pause for user input

Hi I'm trying to create a basic script that pauses for user input to verify a file name before generating the output. I have numerous SSL certificate files which I am trying to determine the expiry date so what I'm trying to do is write a script so that is pauses to request the name of the .pem... (9 Replies)
Discussion started by: Buddyluv
9 Replies

4. Shell Programming and Scripting

Script interacts with user , based on user input it operates

i have a script which takes input from user, if user gives either Y/y then it should continue, else it should quit by displaying user cancelled. #!/bin/sh echo " Enter your choice to continue y/Y OR n/N to quit " read A if then echo " user requested to continue " ##some commands... (7 Replies)
Discussion started by: only4satish
7 Replies

5. Shell Programming and Scripting

How to get the user input recursively until the user provides valid input

Hi, echo "Enter file name of input file list along with absolute path : " read inputFileList if then for string in `cat inputFileList` do echo $string done else echo " file does not exist" fi From the above code, if the user enters a invalid file... (1 Reply)
Discussion started by: i.srini89
1 Replies

6. Shell Programming and Scripting

Find ordinary files in directory input by user

I need to make a shell script that accepts a directory input by the user. The program searches for the directory and finds if it exists or not. Then if it does exist, it outputs the number of files within that directory. Here's what I have so far. result= echo "Please input a directory:... (5 Replies)
Discussion started by: itech4814
5 Replies

7. Shell Programming and Scripting

Counting the number of files within a directory input by the user

So I have a loop that stated if a directory exists or not. If it does it prints the number of files within that directory. I use this code... result=`(ls -l . | egrep -c '^-')` However, no matter which directory I input, it outputs the number "2" What is wrong here? (4 Replies)
Discussion started by: itech4814
4 Replies

8. Shell Programming and Scripting

Creating date directory and moving files into that directory

I have list of files named file_username_051208_025233.log. Here 051208 is the date and 025233 is the time.I have to run thousands of files daily.I want to put all the files depending on the date of running into a date directory.Suppose if we run files today they should put into 05:Dec:08... (3 Replies)
Discussion started by: ravi030
3 Replies

9. Shell Programming and Scripting

creating unique lists from user input

hi all, I'm trying to resolve a scenario where we prompt the user to enter 1 or more disk names. From there we would run a command on each disk which would give its location. This would allow us to create a list of disks at location A, a list of disks at location B,....etc... Any help... (1 Reply)
Discussion started by: annie
1 Replies

10. AIX

Limiting length of user in while creating user

Hi all, I am a newbe to aix 5.2. I want to specify the characters used by users while creating user in aix like specifying the length of the password should i use some sript for that if it is then please let me know how to do this if yes give me the link for the scripts. Thanks in advance ... (2 Replies)
Discussion started by: Satya Mishra
2 Replies
Login or Register to Ask a Question