シェルスクリプトを介してファイルを渡す[閉じる]

シェルスクリプトを介してファイルを渡す[閉じる]

次のようなhead.shというスクリプトがあります。

#!/bin/bash
{
    read line1
    read line2
    read line3
}
echo $line1
echo $line2
echo $line3

次のように呼び出す必要があります。

sh head.sh < rhymes.txt

ファイル名をハードコードするとうまくいきますが、ファイルを渡す方法がわかりません。

ベストアンサー1

あなたのスクリプトを次のように試しましたが、うまくいきます。

cat some_file | sh ./head.sh > rhymes.txt

それとも実際にパイプを使用できませんか?

編集:良いです。しかし、あなたのスクリプトは私に適しています。

$ cat test
11111111
22222222
33333333
4444
555
66
7
$ sh ./head.sh < test
11111111
22222222
33333333
$ cat ./head.sh 
#!/bin/bash
{
    read line1
    read line2
    read line3
}
echo $line1
echo $line2
echo $line3

おすすめ記事