04-12-2009
Special characters in a bash variable in sed
Hello,
I am trying the following:
echo __CHANGEME__ >> testfile
VAR1="&&&"
sed -i "s|__CHANGEME__|${VAR1}|" testfile
cat testfile
This results in testfile containing
__CHANGEME____CHANGEME____CHANGEME__
Whereas I want it to result in
&&&
I understand that if
VAR1="\&\&\&"
then it would work.
But this is a simplified version of my script. In my actual script VAR1 is coming in as a user input/randomly generated ASCII string.
I also understand that I can write some code to insert escape characters in "VAR1". But I am hoping that there a more intelligent way to do this using sed only. For some reason '&' is the only special character that is causing problems.
Thanks in advance for your input.
Last edited by linuxnewbeee; 04-12-2009 at 05:48 AM..
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
Hello-
I have a variables that contains a string like this usr/pass@SCHEMA
I want to extract the usr/pass part and ignore the SCHEMA part, I tried to use this ${dbconn%%@} and apparently it will not work because @ is a special character. I tried \@ and still no go.
Any idea how to solve... (1 Reply)
Discussion started by: Nomaad
1 Replies
2. Shell Programming and Scripting
Hi,
I am reading a file (GC_JAR.log) which has entries like:
511725.629, 0.1122672 secs]
525268.975, 0.1240036 secs]
527181.835, 0.2068215 secs]
527914.287, 0.2884801 secs]
528457.134, 0.2548725 secs]
I want to replace all the entries of "secs]" with just "secs"
Thus, the output... (4 Replies)
Discussion started by: itzz.me
4 Replies
3. Shell Programming and Scripting
I started with this:
counter1=1
cp file.txt file_${counter1}.tmp
while read name1
do
echo $name1
counter2=`expr $counter1 + 1`
sed /'${name1}'/d file_${counter1}.txt > file_${counter2}.txt
counter1=`expr $counter1 + 1`
done < source.txtsource.txt contains the... (1 Reply)
Discussion started by: lakanino
1 Replies
4. Shell Programming and Scripting
Hello All
Seeking the right one SED command.
My attempt is:
From orginal.txt by SED to target.txt
sed -i "/('outbound-callerid/a\$ext->add($context, $exten, '', new ext_SipAddHeader('P-Preferred-Identity', '<sip:${CALLERID(nummer)}@carrier.com>'));" orginal.txtWhat am make wrong?:wall:
... (5 Replies)
Discussion started by: mdbinder
5 Replies
5. Shell Programming and Scripting
This has been covered many times earlier but couldnt figure the issue myself. Can you please advise whats wrong on the below code
I have a variable with special character ($) and am using that variable to replace another variable in file but however sed is failing to parse it correctly
... (7 Replies)
Discussion started by: sasiharitha
7 Replies
6. UNIX for Dummies Questions & Answers
Hello all,
I am facing with a problem of invoking an environment variable.
If I use this command :
/bin/ls -lt FILE_NM_?(20120515|20120516)??????_sas.sig | head -n1 | awk '{print $9}'
It perfectly outputs the desired result.
FILE_NM_20120516000000_sas.sig
But if I do this:... (8 Replies)
Discussion started by: sethmj
8 Replies
7. Shell Programming and Scripting
Hey guys,
I know that title is a mouthful - I'll try to better explain my struggles a little better...
What I'm trying to do is:
1. Query a db and output to a file, a list of column data.
2. Then, for each line in this file, repeat these values but wrap them with:
ITEM{
... (3 Replies)
Discussion started by: ampsys
3 Replies
8. Shell Programming and Scripting
Hi,
I am fairly new to unix scripting and recently tasked with some reporting scripts.
The reporting checks several batch jobs and this is quite iterative.
Now I am trying to minimize script effort and maximize reusability as there are only slight nuances in the repetitive tasks.
For... (3 Replies)
Discussion started by: joeniks
3 Replies
9. Shell Programming and Scripting
I have the foolowing data file:
File1
<p name="A">5004</p>
<p name="B">5004</p>
<p name="C">5004</p>
<p name="A">15004</p>
<p name="B">15004</p>
<p name="C">15004</p>
In a while loop using sed (100 of line need to be replace), I need the output to File3:... (2 Replies)
Discussion started by: bobo
2 Replies
10. Shell Programming and Scripting
Trying to run this command:
find /Volumes/Archive/ -type f -name "Icon"
and get
/Volumes/Archive//New Business and Marketing/2010 /Creative/Image Library/Stuff for Sean/Cafe Heineken/logo_Café Heineken_03.jpg: No such file or directory
due to the accent on the filename. Is there a way around... (2 Replies)
Discussion started by: kostas123334
2 Replies
ipptool(1) Apple Inc. ipptool(1)
NAME
ipptool - perform internet printing protocol requests
SYNOPSIS
ipptool [ --help ] [ --stop-after-include-error ] [ --version ] [ -4 ] [ -6 ] [ -C ] [ -E ] [ -I ] [ -L ] [ -S ] [ -T seconds ] [ -V ver-
sion ] [ -X ] [ -c ] [ -d name=value ] [ -f filename ] [ -i seconds ] [ -n repeat-count ] [ -q ] [ -t ] [ -v ] URI filename [ ... filenameN
]
DESCRIPTION
ipptool sends IPP requests to the specified URI and tests and/or displays the results. Each named file defines one or more requests,
including the expected response status, attributes, and values. Output is either a plain text, formatted text, CSV, or XML report on the
standard output, with a non-zero exit status indicating that one or more tests have failed. The file format is described in ipptoolfile(5).
OPTIONS
The following options are recognized by ipptool:
--help
Shows program help. --stop-after-include-error Tells ipptool to stop if an error occurs in an included file. Normally ipptool will
continue with subsequent tests after the INCLUDE directive. --version Shows the version of ipptool being used.
-4 Specifies that ipptool must connect to the printer or server using IPv4.
-6 Specifies that ipptool must connect to the printer or server using IPv6.
-C Specifies that requests should be sent using the HTTP/1.1 "Transfer-Encoding: chunked" header, which is required for conformance by
all versions of IPP. The default is to use "Transfer-Encoding: chunked" for requests with attached files and "Content-Length:" for
requests without attached files.
-E Forces TLS encryption when connecting to the server using the HTTP "Upgrade" header.
-I Specifies that ipptool will continue past errors.
-L Specifies that requests should be sent using the HTTP/1.0 "Content-Length:" header, which is required for conformance by all versions
of IPP. The default is to use "Transfer-Encoding: chunked" for requests with attached files and "Content-Length:" for requests without
attached files.
-S Forces (dedicated) SSL encryption when connecting to the server.
-T seconds
Specifies a timeout for IPP requests in seconds.
-V version
Specifies the default IPP version to use: 1.0, 1.1, 2.0, 2.1, or 2.2. If not specified, version 1.1 is used.
-X Specifies that XML (Apple plist) output is desired instead of the plain text report. This option is incompatible with the -i (inter-
val) and -n (repeat-count) options.
-c Specifies that CSV (comma-separated values) output is desired instead of the plain text output.
-d name=value
Defines the named variable.
-f filename
Defines the default request filename for tests.
-i seconds
Specifies that the (last) file should be repeated at the specified interval. This option is incompatible with the -X (XML plist out-
put) option.
-l Specifies that plain text output is desired.
-n repeat-count
Specifies that the (last) file should be repeated the specified number of times. This option is incompatible with the -X (XML plist
output) option.
-t Specifies that CUPS test report output is desired instead of the plain text output.
-v Specifies that all request and response attributes should be output in CUPS test mode (-t). This is the default for XML output.
EXIT CODE
The ipptool program returns 0 if all tests were sucessful and 1 otherwise.
COMPATIBILITY
The ipptool program is unique to CUPS.
EXAMPLES
Get a list of completed jobs for "myprinter":
ipptool ipp://localhost/printers/myprinter get-completed-jobs.test
Send email notifications to "user@example.com" when "myprinter" changes:
ipptool -d recipient=mailto:user@example.com ipp://localhost/printers/myprinter create-printer-subscription.test
STANDARD FILES
The following standard files are available:
color.jpg
create-printer-subscription.test
document-a4.pdf
document-a4.ps
document-letter.pdf
document-letter.ps
get-completed-jobs.test
get-jobs.test
get-notifications.test
get-printer-attributes.test
get-subscriptions.test
gray.jpg
ipp-1.1.test
ipp-2.0.test
ipp-2.1.test
ipp-2.2.test
ipp-everywhere.test
onepage-a4.pdf
onepage-a4.ps
onepage-letter.pdf
onepage-letter.ps
print-job.test
print-job-deflate.test
print-job-gzip.test
testfile.jpg
testfile.pcl
testfile.pdf
testfile.ps
testfile.txt
validate-job.test
SEE ALSO
ipptoolfile(5),
http://localhost:631/help
COPYRIGHT
Copyright 2007-2013 by Apple Inc.
13 May 2013 CUPS ipptool(1)