10 More Discussions You Might Find Interesting
1. UNIX for Dummies Questions & Answers
Hello -
I am trying to use a global replace command but its not working.
Here is the cmd I am using in vi:
:%s/OLD/NEW/g
However, in my "NEW" I already have a "/" which is not making the replace work:
:%s/mytestscript.com:33232/mytestscript:70245/test.com/g
the... (2 Replies)
Discussion started by: DallasT
2 Replies
2. Shell Programming and Scripting
I am newbie to perl,
I am trying to use the below syntax to replace globally a string with a variable.
$ bash -version
GNU bash, version 2.05b.0(1)-release (powerpc-ibm-aix5.1)
Copyright (C) 2002 Free Software Foundation, Inc.
$ perl -version
This is perl, v5.8.8 built for... (2 Replies)
Discussion started by: jville
2 Replies
3. UNIX for Dummies Questions & Answers
I am wondering what way, I can remove a certain text with nothing.
for example:
MyVariable=Y7UHNI
to only:
Y7UHNI
removing 'MyVariable=' globally?
thanks (1 Reply)
Discussion started by: DallasT
1 Replies
4. Shell Programming and Scripting
Hello
I need to search for a mult-line strngs(with spaces in between and qoted) in a file1 and replace that text with Fixed string globally in file1. The strng to search for is in file2.
The file is big with some 20K records. so speed and effciency is required
file1: (where srch & rplc... (0 Replies)
Discussion started by: Hiano
0 Replies
5. Shell Programming and Scripting
Hi all,
I want to replace a string of words but i dont want to worry about escaping the characters in that string .
For e.g. If my string is "work/" and i want to replace it with "nowork" .I have to type
%s/work\//nowork/g
Is there a way by which I wont need to worry about the data in... (1 Reply)
Discussion started by: sachinpawar2308
1 Replies
6. Shell Programming and Scripting
Hi all
I'm in need of a command which can replace a specified string with another string - across multiple files within multiple sub-directories (I intend to run it from / )
I've used the following to get a list of the files:
find . | xargs grep <string1>
But that's as far as I've got.... (7 Replies)
Discussion started by: huskie69
7 Replies
7. Shell Programming and Scripting
I am new to unix and awk/sed etc... using C-Shell.
Basically, I have a fixed length file that has 4 different record types on it, H, D, V, W all in column 1. I need to change all the W's in column 1 to D's. in the entire file. The W's can be anywhere in the file and must remain in the same... (3 Replies)
Discussion started by: jclanc8
3 Replies
8. Shell Programming and Scripting
Hi,
I need to change some strings from A to B in a number of files within a directory. Please can someone advise how do I do that?
Many thanks (5 Replies)
Discussion started by: canary
5 Replies
9. Shell Programming and Scripting
I have a file where the rows correspond to individuals and the columns are about 106 variables. Each variable is coded as either ACGT, and "missing" is coded as blank. This is a tab delimited file. I'm trying to replace all blanks (" ") with 0. The simple script I have is only replacing some of the... (3 Replies)
Discussion started by: epi8
3 Replies
10. UNIX for Dummies Questions & Answers
Gurus,
I have in my /tmp directory 26 files "filea", "fileb"..."filez". Each file contains the name of a database 'dwora' at many, many places within each file.
My boss decided to change the name of the db so I need to do (what i'd call) a global search&replace of that string in all my... (0 Replies)
Discussion started by: alan
0 Replies
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)