Sponsored Content
Full Discussion: backslash issues
Top Forums UNIX for Dummies Questions & Answers backslash issues Post 53255 by zazzybob on Friday 9th of July 2004 05:11:22 AM
Old 07-09-2004
Give this a try

Code:
#!/bin/sh
     
while read var
do
     
    dir=`echo $var | cut -d , -f 4 | sed 's/\\\\/\\\\\\\\/g'`
     
    echo $dir
     
done < files.txt
    
exit 0

Change your input file to
Code:
field1,field2,field3,C:\\\\path\\\\to\\\\first\\\\windows\\\\file,field5
field1,field2,field3,C:\\\\path\\\\to\\\\second\\\\windows\\\\file,field5

It's those backslashes that are causing the problem, and need to be sed'ed - and we need to backslash escape the backslashes for each stage of evaluation - and then substitute the correct number of backslash escaped backslashes! Smilie

This nightmare only seems to rear it's ugly head under really old original Bourne shells. I've tested my original solution under bash and ksh and it works fine. The original bourne shell on HP-UX (/usr/old/bin/sh) shows this problem, and requires backslash-city as above.

Peace
ZB
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Backslash in find command

When I run my script in debug mode I see that \ is not getting executed as part of command. It is being treated as escape character. find ${DATABASE_PARAM_PATH} -mtime +${RETENTION_PERIOD} -exec rm -rf {} \; Command execution output in debug mode : find... (1 Reply)
Discussion started by: findprakash
1 Replies

2. UNIX for Dummies Questions & Answers

Escaping backslash

I have a variable containt something like this, c:\mask\mask. How can I escape "\" in the values? I want the value as it it. (9 Replies)
Discussion started by: swmk
9 Replies

3. Shell Programming and Scripting

double backslash in ksh

Hi I need the "\\hello" (without double quotes) to be written to a file. echo "\\\\hello" >file is working under bash shell but not working under ksh shell (gives only one / in the output) Please advise. TIA Prvn (4 Replies)
Discussion started by: prvnrk
4 Replies

4. Shell Programming and Scripting

How to use backslash and variables in sed

I have a line that contains backslashes in which I want sed to substitute text with variables. The line; \\s008\2033330user$ I want to change this in \\s008.ourschool.com\2033330user$ I now use this script: USER=2033330user sed 's/\\'"$USER"'/.ourschool.com\\'"$USER/" This doesn't... (3 Replies)
Discussion started by: Tubbie
3 Replies

5. UNIX for Dummies Questions & Answers

./configure backslash questions

Hello all. I am going to try my hand at compiling tarballs rather than installing packages. I have a pretty good understanding of the process and have even compiled/installed Top from source. But that was an easy install, I want to try something more complex using the various configure... (6 Replies)
Discussion started by: RobertSubnet
6 Replies

6. Shell Programming and Scripting

Echo backslash

If I echo "\\" I get a backslash returned ~$ echo "\\" \ Why doesn't this work: string=`echo "\\"` echo $string I get the error message: bash: command substitution: line 1: unexpected EOF while looking for matching `"' bash: command substitution: line 2: syntax error: unexpected end... (2 Replies)
Discussion started by: locoroco
2 Replies

7. UNIX for Dummies Questions & Answers

Weird behavior of backslash, please help!!

Hi I am getting absurd behavior of escape character in echos as followed: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\?... (3 Replies)
Discussion started by: nixhead
3 Replies

8. UNIX for Advanced & Expert Users

grep for a backslash question

Why does this work when grepping for a backslash? grep '\\' .bash_history grep "" .bash_historyWhy does this not work when grepping for a backslash? grep "\\" .bash_historyI know this works works but just don't understand why I need 4 backslashes when using double quotes. grep "\\\\"... (7 Replies)
Discussion started by: cokedude
7 Replies

9. Shell Programming and Scripting

[Solved] Disappearing backslash

Let's say I have a text file called process.out that contains: cn=long\, ann,cn=users cn=doe\, john,cn=users I need to have the following appended in the beginning ldapdelete -h $OIDHOST So the final output looks like: ldapdelete -h $OIDHOST "cn=long\, ann,cn=users" ldapdelete -h... (4 Replies)
Discussion started by: exm
4 Replies

10. Shell Programming and Scripting

Not to Escape Backslash in script

Hello Folks, I am looking for a bash script which check the ftp server connection status and transfer success/failure also final stage is like if the transfer/connection failed, i should get an email. First stage - checking for login success or not #!/bin/bash HOST='your.ftp.site'... (3 Replies)
Discussion started by: Thala
3 Replies
Tcl_AllowExceptions(3tcl)				      Tcl Library Procedures					 Tcl_AllowExceptions(3tcl)

__________________________________________________________________________________________________________________________________________________

NAME
Tcl_AllowExceptions - allow all exceptions in next script evaluation SYNOPSIS
#include <tcl.h> Tcl_AllowExceptions(interp) ARGUMENTS
Tcl_Interp *interp (in) Interpreter in which script will be evaluated. _________________________________________________________________ DESCRIPTION
If a script is evaluated at top-level (i.e. no other scripts are pending evaluation when the script is invoked), and if the script termi- nates with a completion code other than TCL_OK, TCL_ERROR or TCL_RETURN, then Tcl normally converts this into a TCL_ERROR return with an appropriate message. The particular script evaluation procedures of Tcl that act in the manner are Tcl_EvalObjEx, Tcl_EvalObjv, Tcl_Eval, Tcl_EvalEx, Tcl_GlobalEval, Tcl_GlobalEvalObj, Tcl_VarEval and Tcl_VarEvalVA. However, if Tcl_AllowExceptions is invoked immediately before calling one of those a procedures, then arbitrary completion codes are per- mitted from the script, and they are returned without modification. This is useful in cases where the caller can deal with exceptions such as TCL_BREAK or TCL_CONTINUE in a meaningful way. KEYWORDS
continue, break, exception, interpreter Tcl 7.4 Tcl_AllowExceptions(3tcl)
All times are GMT -4. The time now is 06:18 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy