I have the following input:
Value1|Value2|Value3|Value4@@ Value5|Value6|Value7|Value8@@ Value9|etc...
In my bash script I would like to replace
This wraps up using perl to do it, and gives some simple help.
$ echo "hi\nthere"
hi
there
$ echo "hi\nthere" | replace_string.sh e
hi
th
re
$ echo "hi\nthere" | replace_string.sh hi
there
$ echo "hi\nthere" | replace_string.sh hi bye
bye
there
$ echo "hi\nthere" | replace_string.sh e super all
hi
thsuperrsuper
#!/bin/bash
ME=$(basename $0)
function show_help()
{
IT=$(cat < replaces first instance of ":" with a new line
$ME : b -> replaces first instance of ":" with "b"
$ME a b all -> replaces ALL instances of "a" with "b"
)
echo "$IT"
exit
}
if [ "$1" == "help" ]
then
show_help
fi
if [ -z "$1" ]
then
show_help
fi
STRING="$1"
TIMES=${3:-""}
WITH=${2:-"\n"}
if [ "$TIMES" == "all" ]
then
TIMES="g"
else
TIMES=""
fi
perl -pe "s/$STRING/$WITH/$TIMES"