pavement

Escaped to multi-line format

From FreeBSDwiki
Revision as of 01:00, 29 January 2005 by Dave (Talk | contribs)
Jump to: navigation, search

An often-followed convention when reproducing shell scripts online is escaping carriage returns, using the backslash character, in order to render single very long continous lines into multiple lines for readability. For example, the following simple script, which concatenates a lot of files into one file named "all.files":

#!/bin/sh

cat one.file two.file three.file four.file five.file six.file seven.file eight.file > all.files

Could be rendered like this:

#!/bin/sh

cat one.file two.file three.file \
four.file five.file six.file \
seven.file eight.file \
> all.files

On most machines, the script should work exactly the same in escaped format as it does in the normal, unescaped format. However, I tend to recommend removing the backslashes and carriage returns and entering lines expressed this way as single continous lines - because while anything should work fine escaped, I have very occasionally seen source code that refused to work in escaped format but did work once the escapes were removed and the lines concatenated. So if you don't escape to multiple lines, you have one less thing to worry about potentially having to fix. This is often because of the way that a particular shell treats the \ character; the Bourne shell sh is ubiquitous and should not have these issues but you should avoid the \ use Just In Case.

Personal tools