09-03-2007
From the man page of bash,
Quote:
Special Parameters
The shell treats several parameters specially. These param-
eters may only be referenced; assignment to them is not
allowed.
@ Expands to the positional parameters, starting from
one. When the expansion occurs within double quotes,
each parameter expands to a separate word. That is,
"$@" is equivalent to "$1" "$2" ... When there are no
positional parameters, "$@" and $@ expand to nothing
(i.e., they are removed).
Your $@ is being "expanded to nothing". If you want to see how it works, run "set -x" and then run your mkdir command. You will then see that the mkdir command gets only "#$%" as args.
Run this in csh. "Variable syntax".
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hi, I came across this strange error while creating a directory using mkdir command.
The command created the directory but it returned an error code 512.
Could some one tell me why this error popped up and what exactly does an error code 512 infer? (11 Replies)
Discussion started by: shreyasjothish
11 Replies
2. Shell Programming and Scripting
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
3. Shell Programming and Scripting
Hi all,
I'd like to create a directory tree, and define from stdin how many levels deep and how many directories in each level should be created.
What I wrote does not work properly:#!/bin/bash
#set -x
read -p " What root directory? " rootDir
&& { /bin/rm -R $rootDir; mkdir $rootDir; } ||... (2 Replies)
Discussion started by: NBaH
2 Replies
4. Shell Programming and Scripting
Hi All,
As I m very new for Unix, I need to check for a directory and move a file. If Directory is not found, The script should create a directory and move the file. Can any one help here. (7 Replies)
Discussion started by: vikramtk
7 Replies
5. Homework & Coursework Questions
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
6. UNIX for Dummies Questions & Answers
Hello Experts
let say we got a line a file named
/user/Oracle/my_catalog/default/root/webcat+backup+testing+07192011.atr
now i have to create a directory with name
webcat backup testing 07192011
by removing + and removing .atr at the given path...can it be possible
Please let me know... (4 Replies)
Discussion started by: aks_1902
4 Replies
7. UNIX for Dummies Questions & Answers
Hello Experts
while read dirlist
do
mkdir "$(echo "$dirlist" |\ awk -F\| '{gsub(/(+)/," ",$NF);gsub(/\.atr$/,""); print}')"
done < /user/Oracle/my_catalog/default/root/bkup/dirnames.txt
where dirname.txt consist of file path details as mentioned below
... (4 Replies)
Discussion started by: aks_1902
4 Replies
8. UNIX for Dummies Questions & Answers
Hi,
If i create a directory like with the command ...
~/.ssh
so where this folder will be get created in side my home directory ...? what (~) represents here..?:confused: (4 Replies)
Discussion started by: rahul125
4 Replies
9. Shell Programming and Scripting
Dear All,
I have a shell scripts which create a directory and perform moving some files, when the script is kept where it is creating directory then it runs fine , but when the scripts is run where it is supposed to be which is different location then where i am creating directory , scripts... (2 Replies)
Discussion started by: guddu_12
2 Replies
10. UNIX for Dummies Questions & Answers
hello,
is there any command that i can use to create a file and also it directory (if not exist)?
example: <command> /home/admin/testdir/test1.txt
desc: this will create test1.txt under testdir directory. but if testdir is not exist it will be created automatically.
thank you... (3 Replies)
Discussion started by: makan
3 Replies
shift(1) User Commands shift(1)
NAME
shift - shell built-in function to traverse either a shell's argument list or a list of field-separated words
SYNOPSIS
sh
shift [n]
csh
shift [variable]
ksh
* shift [n]
DESCRIPTION
sh
The positional parameters from $n+1 ... are renamed $1 ... . If n is not given, it is assumed to be 1.
csh
The components of argv, or variable, if supplied, are shifted to the left, discarding the first component. It is an error for the variable
not to be set or to have a null value.
ksh
The positional parameters from $n+1 $n+1 ... are renamed $1 ..., default n is 1. The parameter n can be any arithmetic expression that
evaluates to a non-negative number less than or equal to $#.
On this man page, ksh(1) commands that are preceded by one or two * (asterisks) are treated specially in the following ways:
1. Variable assignment lists preceding the command remain in effect when the command completes.
2. I/O redirections are processed after variable assignments.
3. Errors cause a script that contains them to abort.
4. Words, following a command preceded by ** that are in the format of a variable assignment, are expanded with the same rules as a vari-
able assignment. This means that tilde substitution is performed after the = sign and word splitting and file name generation are not
performed.
ATTRIBUTES
See attributes(5) for descriptions of the following attributes:
+-----------------------------+-----------------------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+-----------------------------+-----------------------------+
|Availability |SUNWcsu |
+-----------------------------+-----------------------------+
SEE ALSO
csh(1), ksh(1), sh(1), attributes(5)
SunOS 5.10 15 Apr 1994 shift(1)