Weird behavior of backslash, please help!!


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers Weird behavior of backslash, please help!!
# 1  
Old 04-06-2011
Weird behavior of backslash, please help!!

Hi I am getting absurd behavior of escape character in echos as followed:
Code:
oinlcso003{arsadm} #: echo "\as shdd"
\as shdd
oinlcso003{arsadm} #: echo "Well, isn't that \"special\"?"
Well, isn't that "special"?
oinlcso003{arsadm} #: echo "Well, isn't that \special\?"
Well, isn't that \special\?
oinlcso003{arsadm} #: echo "Well, isn't that \$special\$?"
Well, isn't that $special$?
oinlcso003{arsadm} #: echo "Well, isn't that \$ special \$?"
Well, isn't that $ special $?
oinlcso003{arsadm} #: echo "Well, isn't that \#special\#?"
Well, isn't that \#special\#?
oinlcso003{arsadm} #: echo "Well, isn't that \'special\'?"
Well, isn't that \'special\'?
oinlcso003{arsadm} #: echo "Well, isn't that \' special \'?"
Well, isn't that \' special \'?
oinlcso003{arsadm} #: echo "Well, isn't that \\' special \'?"
Well, isn't that \' special \'?
oinlcso003{arsadm} #: 
oinlcso003{arsadm} #: echo "Well, isn't that \\\' special \'?"
Well, isn't that \\' special \'?
oinlcso003{arsadm} #: echo "Well, isn't that \\\'\\ special \'?"
Well, isn't that \\'\ special \'?

# 2  
Old 04-06-2011
Hi.

There's nothing absurd about it, really.

a, and s have no special meaning. Single quotes have no special meaning inside double quotes, # doesn't have special meaning inside any quotes, escaping a slash gives a literal slash, escaping a double quote inside double quotes gives a literal double quote, and a slash followed by any character which has no special meaning gives a literal slash.
This User Gave Thanks to Scott For This Post:
# 3  
Old 04-06-2011
Thanks @scottn, but I hope more answers will more clarify the concept Smilie
# 4  
Old 04-07-2011
a little bit of google led me to this
Quoting characters

Using double quotes the literal value of all characters enclosed is preserved, except for the dollar sign, the backticks (backward single quotes, ``) and the backslash.
The dollar sign and the backticks retain their special meaning within the double quotes.
The backslash retains its meaning only when followed by dollar, backtick, double quote, backslash or newline. Within double quotes, the backslashes are removed from the input stream when followed by one of these characters. Backslashes preceding characters that don't have a special meaning are left unmodified for processing by the shell interpreter.
A double quote may be quoted within double quotes by preceding it with a backslash.
Code:
franky ~> echo "$date"
20021226

franky ~> echo "`date`"
Sun Apr 20 11:22:06 CEST 2003

franky ~> echo "I'd say: \"Go for it!\""
I'd say: "Go for it!"

franky ~> echo "\"
More input>"

franky ~> echo "\\"
\

 
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Commenting out "expr" creates weird behavior

This really puzzles me. The following code gives me the error 'expr: syntax error' when I try to do multi-line comment using here document <<EOF echo "Sum is: `expr $1 + $2`" EOF Even if I explicitly comment out the line containing the expr using "#", the error message would still exist... (3 Replies)
Discussion started by: royalibrahim
3 Replies

2. UNIX for Dummies Questions & Answers

Weird behavior of Vi

Hi there, I am a bit puzzled by a weird behavior of Vi. I very simply would like to add increased numbers in some files. Since I have many thousands entries per file and many files, I would like to macro it in vi. To do this, I enter the first number ("0001") on the first line and then yank... (4 Replies)
Discussion started by: hypsis
4 Replies

3. UNIX for Advanced & Expert Users

Weird TR behavior. Replacing two instance

Can someone please explain what's wrong with the command i use below? tr -c '\11\12\40-\176' ' '< $TEMP_FILE > $TEMP_FILE2 The invalid character/s is replaced with two spaces, the string2 only have 1 space in it. Please help. Sample output: 333243,333244c333243,333244 < ... (1 Reply)
Discussion started by: Jin_
1 Replies

4. UNIX and Linux Applications

weird yum behavior with provides and install

Why could whatprovides not lookup this info for over 10 minutes, but install could install that package in less than a minute? $ yum whatprovides */lsb_release Loaded plugins: langpacks, presto, refresh-packagekit, versionlock ^Cupdates/group 18% 3.1 kB/s | 360 kB 08:28 ETA ... (0 Replies)
Discussion started by: cokedude
0 Replies

5. Shell Programming and Scripting

awk print behavior weird

Hi Experts I am facing a weird issue while using print statement in awk. I have a text file with 3 fields shown below: # cat f1 234,abc,1000 235,efg,2000 236,jih,3000 # When I print the third column alone, I dont face any issue as shown below: # awk '{print $3 }' FS=, f1 1000 2000... (5 Replies)
Discussion started by: guruprasadpr
5 Replies

6. UNIX for Dummies Questions & Answers

Weird home key behavior

Hi there, I'm using putty to connect to several servers. On every remote machine, the home key takes me at the beginning of a command line. Exept on one machine where a press on the home key outputs the tilde sign (~). Is there any place where I can override this behavior, I really prefer my... (6 Replies)
Discussion started by: chebarbudo
6 Replies

7. UNIX for Dummies Questions & Answers

Weird Behavior of a Script

ok, there's a script i'm working on written in shell programming. #!/bin/sh this script is written to spit out the contents of certain variables inside of it so the output looks something like this: server01=89 server02=69 server03=89 server04=76 now, when i run this script from the... (4 Replies)
Discussion started by: SkySmart
4 Replies

8. OS X (Apple)

Weird rsync behavior

I use rsync to keep a directory in synchronization betwen a Linux box with the hostname brutal and a Mac running OS X 10.5 (Leopard) with the hostname cooper. When I run the following command on my Linux machine: rsync -avz --delete myuserid@cooper:/Library/WebServer/Documents... (2 Replies)
Discussion started by: scotbuff
2 Replies

9. Shell Programming and Scripting

weird behavior of grep -P

I met a problem in using grep -P. There is a text file, temp.txt, whose content is: dddd abc I ran the command: grep -P "\s*abc" temp.txt The result I expected is: abc But, the actual result is: dddd abc Could anyone tell me what is wrong? Thanks. (2 Replies)
Discussion started by: pankai
2 Replies

10. Solaris

Weird behavior on a Sun Fire V120 running solaris 10.

All, After a power loss I went to power on our sun fire v120 that is running solaris 10 and now it will not boot. I tried power cycling it from the lom and pulling the cord but nothing works. All it does is after a power cycle it will start to boot and then start to spit out a bunch of hex... (2 Replies)
Discussion started by: jsandova
2 Replies
Login or Register to Ask a Question