← Back to team overview

sslug-teknik team mailing list archive

Re: bash og backslash?

 

2010/11/7 David Bo Jensen <dbj@xxxxxxxxxxxxx>:
> Mit script
>
> #!/bin/bash
> while read line
> do
>  echo $line
> done
>
> Jeg taster nu noget ind, der har backslashes. Backslash er også en escape
> karakter, så for at få en '\' må jeg skrive '\\'.
> Hvordan kan jeg undgå dette? Eller hvordan kan jeg erstatte en backslash med
> to i en varabel?
>
> Mine data kommer fra en fil. Jeg kunne skrive noget lignende
>
> cat minfil | sed 's/\\/\\\\/g' | mitscript
>
> men jeg ønsker at sed kommandoen skal være en del af mit script.

Tilføj -r til din read-kommando:

[kenni@ION ~]$ cat minfil.txt
test\t123

[kenni@ION ~]$ cat mitscript
#!/bin/bash
while read -r line
do
 echo $line
done

[kenni@ION ~]$ cat minfil.txt | ./mitscript
test\t123

Mvh.
Kenni


References