Sponsored Content
Top Forums Shell Programming and Scripting Executing sed command inside a bash script Post 303027328 by Corona688 on Thursday 13th of December 2018 11:38:18 AM
Old 12-13-2018
quotes-inside-quotes is usually a bad idea. The shell doesn't handle them - or any other shell syntax - in variables as a security measure. You can force it to do so, but that often ends up evaluating a lot of things you don't want it to.

There's probably a way to do this without resorting to quotes-in-quotes. What, exactly, are you trying to accomplish? Don't say "quotes inside quotes", don't say "passing arguments", etc, etc. What is your ultimate goal?

By my best guess, I'd do something like this:

Code:
#!/bin/bash

while [ "$#" -gt 0 ]
do
case "$1" in
-*)    # Collect all -i, -r, etc arguments
        SEDARGS="$SEDARGS $1"
        shift
        ;;
*)    break ;;
esac
done

REGEX="$1"

if [ -z "$SEDARGS" ]
then
        echo sed "$REGEX" "$FILE"
else
        echo sed $SEDARGS "$REGEX" "$FILE"
fi

Run it like:

Code:
./myscript.sh -r -i "regex"

No need for quotes-in-quotes as it takes the arguments as given.

Last edited by Corona688; 12-13-2018 at 12:44 PM..
These 2 Users Gave Thanks to Corona688 For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Sed inside bash script - accessing multiple files

I have a file (email) containing email addresses. I have a second file (terms) that contains simple regular expressions and words/characters. Here are some examples: \.trainee \.group \.web I want to go through email and delete lines containing the expressions/words from terms and write... (1 Reply)
Discussion started by: manouche
1 Replies

2. UNIX for Dummies Questions & Answers

Problem with executing command inside a cron job

Hi All, I have scheduled a script in cron which writes output to the below file. ....>> /data/Target/wrapper_invoke_ds_job_`date '+%Y%m%d'`.ksh_out 2>&1 But the date command is not getting resolved in the format specified. It just resolves to the following. wrapper_invoke_MQ_ds_job_Tue... (3 Replies)
Discussion started by: pkm_oec
3 Replies

3. Shell Programming and Scripting

Bash: executing a command based on organized output

Just learning scripting. I need to remove duplicate managed printers using lpadmin. I have the following script (it's rough and probably a better way to do it) that returns the values as IP (column 1) Printer Name (column 2).command: lpstat -v | grep -E ... (6 Replies)
Discussion started by: Zookpr
6 Replies

4. Programming

Executing a awk command inside perl script --

Hello experts I want to execute a awk command, which reads from txt files and sums the numbers from the first column for those listed only inside a <init> block -- The awk command is like awk '/<\/?init>/{x = !x}x{a++}x && a > 2{sum+=$1}END{printf"%E" "\n", sum} So, I want to execute... (2 Replies)
Discussion started by: Alkass
2 Replies

5. Shell Programming and Scripting

Bash- Command run from script does not pass full parameters with spaces inside

There's a JavaScript file that I call from command line (there's a framework) like so: ./RunDiag.js param1:'string one here' param2:'string two here' I have a shell script where I invoke the above command. I can run it in a script as simple as this #!/bin/bash stuff="./RunDiag.js... (4 Replies)
Discussion started by: AcerAspirant
4 Replies

6. Shell Programming and Scripting

Bash - command is executing but do nothing without complaining

Hello. This part of script do nothing but no complain. Here the directory content : The script run by root cd /root CMD="rmdir -p -v --ignore-fail-on-non-empty .ssh" echo $CMD $CMD The ouput linux:~/bin # ./test_05 rmdir -p -v --ignore-fail-on-non-empty .ssh rmdir: removing directory,... (3 Replies)
Discussion started by: jcdole
3 Replies

7. UNIX for Dummies Questions & Answers

Write pid and command name to a txt file while executing a bash script

Hi All, Just have a requirement, I am executing a bash shell script, my requirement is to catch the pid and job name to a txt file in the same directory, is there anyway to do it? please help me out. Regards Rahul ---------- Post updated at 08:42 AM ---------- Previous update was at... (2 Replies)
Discussion started by: rahulkalra9
2 Replies

8. Shell Programming and Scripting

sed command not working inside ksh script but works fine outside

Hi, I am a bit confused ,why would a sed command work fine outside of ksh script but not inside. e.g I want to replace all the characters which end with a value and have space at end of it. so my command for it is : sed -i "s/$SEPARATOR /$SEPARATOR/g" file_name This is working fine in... (8 Replies)
Discussion started by: vital_parsley
8 Replies

9. Shell Programming and Scripting

Run bash command inside zsh script

Hi, I would like to run following code in bash inside a zsh script. (In this case is output unfortunately very different if you run it in zsh). I tried to put "bash" in front of the code but I obtained following error message "bash: do: No such file or directory " eve though I merged the whole... (7 Replies)
Discussion started by: kamcamonty
7 Replies

10. Shell Programming and Scripting

Need bash script to use a sed command as a variable

I need to be able to use a sed command as a variable in a bash script. I have the sed command that almost works the way I want it. the command is sed -n '/inet/,/}/p' config.boot This gets me this result: inet 192.168.1.245 } I need to get the IP address into a variable so I... (9 Replies)
Discussion started by: edlentz
9 Replies
HTMLSPECIALCHARS_DECODE(3)						 1						HTMLSPECIALCHARS_DECODE(3)

htmlspecialchars_decode - Convert special HTML entities back to characters

SYNOPSIS
string htmlspecialchars_decode (string $string, [int $flags = ENT_COMPAT | ENT_HTML401]) DESCRIPTION
This function is the opposite of htmlspecialchars(3). It converts special HTML entities back to characters. The converted entities are: &amp;, &quot; (when ENT_NOQUOTES is not set), &#039; (when ENT_QUOTES is set), &lt; and &gt;. PARAMETERS
o $string - The string to decode. o $flags - A bitmask of one or more of the following flags, which specify how to handle quotes and which document type to use. The default is ENT_COMPAT | ENT_HTML401. Available $flags constants +--------------+---------------------------------------------------+ |Constant Name | | | | | | | Description | | | | +--------------+---------------------------------------------------+ | | | | ENT_COMPAT | | | | | | | Will convert double-quotes and leave single- | | | quotes alone. | | | | | | | | ENT_QUOTES | | | | | | | Will convert both double and single quotes. | | | | | | | |ENT_NOQUOTES | | | | | | | Will leave both double and single quotes uncon- | | | verted. | | | | | | | | ENT_HTML401 | | | | | | | Handle code as HTML 4.01. | | | | | | | | ENT_XML1 | | | | | | | Handle code as XML 1. | | | | | | | | ENT_XHTML | | | | | | | Handle code as XHTML. | | | | | | | | ENT_HTML5 | | | | | | | Handle code as HTML 5. | | | | +--------------+---------------------------------------------------+ RETURN VALUES
Returns the decoded string. CHANGELOG
+--------+---------------------------------------------------+ |Version | | | | | | | Description | | | | +--------+---------------------------------------------------+ | 5.4.0 | | | | | | | The constants ENT_HTML401, ENT_XML1, ENT_XHTML | | | and ENT_HTML5 were added. | | | | +--------+---------------------------------------------------+ EXAMPLES
Example #1 A htmlspecialchars_decode(3) example <?php $str = "<p>this -&gt; &quot;</p> "; echo htmlspecialchars_decode($str); // note that here the quotes aren't converted echo htmlspecialchars_decode($str, ENT_NOQUOTES); ?> The above example will output: <p>this -> "</p> <p>this -> &quot;</p> SEE ALSO
htmlspecialchars(3), html_entity_decode(3), get_html_translation_table(3). PHP Documentation Group HTMLSPECIALCHARS_DECODE(3)
All times are GMT -4. The time now is 03:15 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy