一方:
$ cat lines.txt
a/b
'c/d e/f'
$ cat 1.sh
#!/bin/sh
./2.sh `cat lines.txt`
$ cat 2.sh
#!/bin/sh
echo p1=$1
echo p2=$2
echo p3=$3
$ ./1.sh
p1=a/b
p2='c/d
p3=e/f'
2つの引数だけを受け取るようlines.txt
に変更1.sh
するにはどうすればよいですか?2.sh
a/b
c/d e/f
?
ベストアンサー1
IFS(内部フィールド区切り文字)を改行に設定します。
$ cat 1.sh
#!/bin/sh
OLD_IFS=$IFS
IFS="
"
./2.sh `cat lines.txt`
IFS=$OLD_IFS
$ ./1.sh
p1=a/b
p2='c/d e/f'
p3=