It's not homework. I'm looking to know mostly out of curiosity, but you could argue that using wildcards is bad anyway. If there's a million files in the directory, that's a million rm processes (obviously not all simultaneous, but still). It's not bullet-proof:
/*skipped the code*./
On top of that, it's not easy to use from, say, an exec() call. You need the infrastructure of a shell.
So my question stands.
I dont think you have that right.. a million processes is not a million rm processes. Its all those million files as arguments to one rm process. Now that might fail due to too many arguments (any command can handle only a finite number).
I will give you your second argument about not being easy to use from an exec() call.
Why don't you use a slightly modified form of the find command that ppierald gave:
That, by the way, would be a million rm processes (one for each file/directory that the find command would output).
Hi, first post here be gentle. Very new to Unix. Using HP-UX 10.20
I CD into a remote directory on one machine
$ cd /net/remote hostname
yet when I do an ll in this directory none of the contents appear. It just is empty.
when I do the same command from another machine,
$ cd... (13 Replies)
I'm getting this return whenever I try to do anything on a directory
root# ls -al /directory
ls: .: Value too large to be stored in data type.
total 0
I can change directory down two levels but can not list contents of the root of this directory. ANy one seen this? (1 Reply)
Hey guys!
I'm so glad I found this site, I've had so many questions and have been left alone for roughly a year scanning man pages but It's just not quite cutting it for some things.
So, I often like to list directories when browsing around my local machine, a friend's machine, or my web... (6 Replies)
Hi Guys,
I have an user's home directory set to /home/A
And A contains the following directories B & C
Is there some way in solaris by which i can prevent the directories B and C from getting deleted by the user but the contents of the directories B & C can be deleted ?
Also i have... (2 Replies)
Well I did a search and didn't anything for my specific case.
I got a directory with a bunch of text file. All of them have the following pattern on the filename "ABCD_<As of Date>.txt"
Example:
ABCD_20110301.txt
ABCD_20110302.txt
ABCD_20110303.txt
All I want to accomplish is a Korn... (3 Replies)
Hello all! I am writing a script that takes in a directory name as input and if the directory exists, it shows the files inside the directory
here is what I have so far (incomplete) (mostly like pseudocode)
#/bin/sh
echo Please enter the name of a directory
read dir
grep $dir... (2 Replies)
Hi
How to completely delete directory with all it contents
I try to use rmdir -r but it give error
Thanks
---------- Post updated at 03:10 AM ---------- Previous update was at 02:52 AM ----------
Hi all
I got the solution for my thread
i use mkdir with the option -p
Thanks (1 Reply)
Hi,
I have taken a backup of a directory on my tape in using below command
cd /backup
find * -print|backup -ivf '/dev/rmt0' '-U' |tee -a /syslogs/backup.log and output appear in below format.
a 0 rman-before-08032014
a 58403323904... (2 Replies)
Hi ,
I want to zip files present in the directories listed under a parent directory without zipping the directory itself
my parent directory path is
/informatica/DGDMN/PowerCenter1011/server/infa_shared/SrcFiles/OTE/Final_Directory
I have the below directories named as 1,2,3,4,5 listed... (9 Replies)
Discussion started by: paul1234
9 Replies
LEARN ABOUT DEBIAN
shell-quote
SHELL-QUOTE(1p) User Contributed Perl Documentation SHELL-QUOTE(1p)NAME
shell-quote - quote arguments for safe use, unmodified in a shell command
SYNOPSIS
shell-quote [switch]... arg...
DESCRIPTION
shell-quote lets you pass arbitrary strings through the shell so that they won't be changed by the shell. This lets you process commands
or files with embedded white space or shell globbing characters safely. Here are a few examples.
EXAMPLES
ssh preserving args
When running a remote command with ssh, ssh doesn't preserve the separate arguments it receives. It just joins them with spaces and
passes them to "$SHELL -c". This doesn't work as intended:
ssh host touch 'hi there' # fails
It creates 2 files, hi and there. Instead, do this:
cmd=`shell-quote touch 'hi there'`
ssh host "$cmd"
This gives you just 1 file, hi there.
process find output
It's not ordinarily possible to process an arbitrary list of files output by find with a shell script. Anything you put in $IFS to
split up the output could legitimately be in a file's name. Here's how you can do it using shell-quote:
eval set -- `find -type f -print0 | xargs -0 shell-quote --`
debug shell scripts
shell-quote is better than echo for debugging shell scripts.
debug() {
[ -z "$debug" ] || shell-quote "debug:" "$@"
}
With echo you can't tell the difference between "debug 'foo bar'" and "debug foo bar", but with shell-quote you can.
save a command for later
shell-quote can be used to build up a shell command to run later. Say you want the user to be able to give you switches for a command
you're going to run. If you don't want the switches to be re-evaluated by the shell (which is usually a good idea, else there are
things the user can't pass through), you can do something like this:
user_switches=
while [ $# != 0 ]
do
case x$1 in
x--pass-through)
[ $# -gt 1 ] || die "need an argument for $1"
user_switches="$user_switches "`shell-quote -- "$2"`
shift;;
# process other switches
esac
shift
done
# later
eval "shell-quote some-command $user_switches my args"
OPTIONS --debug
Turn debugging on.
--help
Show the usage message and die.
--version
Show the version number and exit.
AVAILABILITY
The code is licensed under the GNU GPL. Check http://www.argon.org/~roderick/ or CPAN for updated versions.
AUTHOR
Roderick Schertler <roderick@argon.org>
perl v5.8.4 2005-05-03 SHELL-QUOTE(1p)