06-14-2010
Quote:
Originally Posted by
thedoobieman5
OK now something else is happening I don't get. When I run the command it only works for directories, otherwise I get an error message. I thought the "$@" was supposed to include all possible arguments?
![Confused Smilie](https://www.unix.com/images/smilies/confused.gif)
"$@" represents all the arguments.
If you called the script with * as the argument, the shell will expand it and the script will see all the files (including subdirectories) in the current directory (not including dot files), each stored as a separate argument in "$@".
This User Gave Thanks to cfajohnson For This Post:
10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
I'm trying to figure out how to build a small shell script that will find old .shtml files in every /tgp/ directory on the server and delete them if they are older than 10 days...
The structure of the paths are like this:
/home/domains/www.domain2.com/tgp/
/home/domains/www.domain3.com/tgp/... (1 Reply)
Discussion started by: Neko
1 Replies
2. UNIX for Dummies Questions & Answers
what will the cmd below do?
ls *.3
1 members mentions that to seek all permutations and combinations of the mp3 extension ill have to use curly braces, {} and not, .
what then will do? (13 Replies)
Discussion started by: abhi
13 Replies
3. Shell Programming and Scripting
Hi, I have this code to search all "cif" files using wildcard
for file in *.cif
do
grep "Uiso" $file | awk '{ print $3, $4, $5 }' > tet
done
I get this error
"grep: *.cif: No such file or directory"
Please where am I going wrong!!!
Thank you in advance (6 Replies)
Discussion started by: princessotes
6 Replies
4. Shell Programming and Scripting
This might be a simple answer but I can't for my life figure it out. If I input "bat", how do I get the condition to pick it up with the wild card *at*.
#!/bin/bash
read -p "enter" BOO
if ; then
echo "you win"
else
echo "you lose"
fi (3 Replies)
Discussion started by: zerofire123
3 Replies
5. UNIX for Advanced & Expert Users
Can someone please explain the wildcards in this. How is this recursive? When I put this in my terminal it recursively displayed everything.
ls .* * (6 Replies)
Discussion started by: cokedude
6 Replies
6. Shell Programming and Scripting
Hi,
Can anyone help me how to use * in if statement.
File contains below
line1:a|b|c|Apple-RED|
line2:c|d|e|Apple-Green|
line3:f|g|h|Orange|
I need to find line by line 4th field contains 'Apple' or not.
Please help me at the earliest. (6 Replies)
Discussion started by: jam_prasanna
6 Replies
7. Shell Programming and Scripting
i have got heaps of files (.pdf, .txt and .doc) files in one folder, i am making a program in PERL that helps me find the files i want easier using shell wildcard,
something like this!!
print "Enter a pattern: (must be in )";
$input = <STDIN>;
if (The input is in and valid wildcard... (3 Replies)
Discussion started by: bshell_1214
3 Replies
8. Shell Programming and Scripting
Hi Experts,
I want to use ls in the below form:
ls -l *.{txt,TXT} (working fine)
but when i am declaring a variable,
VAR="*.{txt,TXT}"
ls -l $VAR is not working. Please help.
Thanks. (4 Replies)
Discussion started by: sugarcane
4 Replies
9. Shell Programming and Scripting
Hi Folks,
I had a requirement to replace a pattern a.*a with 'a' alone. I'm writing a sed command to do that. But I'm not able to work this out. Pls help me.
echo 'a123a456a789' | sed 's/a.*a/a/'
Expected o/p : a456a789
But actual o/p is a789. :confused:
how can write that... (6 Replies)
Discussion started by: poova
6 Replies
10. OS X (Apple)
CD_numb is AM017
this code:
set the_Firstcom_CD to (do shell script "ls -d '/volumes/audioNAS/Firstcom/Access Music/' ") & CD_numb
gives me this:
"/volumes/audioNAS/Firstcom/Access Music/AM017"
the item I am looking for is AM017Q.
I can get the "*" syntax right so it never finder... (7 Replies)
Discussion started by: sbrady
7 Replies
LEARN ABOUT CENTOS
makesh
MAKESH(1) General Commands Manual MAKESH(1)
NAME
makeSH - a .SH script maker
SYNOPSIS
makeSH files
DESCRIPTION
MakeSH examines one or more scripts and produces a .SH file that, when run under sh, will produce the original script. The .SH script so
produced has two sections containing code destined for the output. The first section has variable substitutions performed on it (taking
values from config.sh), while the second section does not. MakeSH does not know which variables you want to have substituted, so it puts
the whole script into the second section. It's up to you to insert any variable substitutions in the first section for any values you want
from config.sh.
You should run makeSH from within your top-level directory and use the relative path to the file as an argument, so that the "Extracting
..." line printed while running the produced .SH file later on will give that same path.
AUTHOR
Larry Wall <lwall@netlabs.com>
SEE ALSO
pat(1), metaconfig(1), makedist(1).
BUGS
It could assume that variables from metaconfig's Glossary need to be initialized in the first section, but I'm too lazy to make it do that.
LOCAL MAKESH(1)