shell別のshellの実行結果を取得
shellループを使用して1~5を印刷し、1秒間隔で出力します(loop.sh):
プログラム出力:
別のshellを使用して出力を連続的に読み取り、いくつかの処理を行うとしますか?
この行shellはまず上のloopを実行した.shは、各出力をループして得られ、前に==が加算され、実行結果は:
注意しなければならないのは、このshellはpoolに従って一度に完成したわけではありません.shタイミングの出力、while read file構文は対応することができます
出力をキャプチャして処理し、実際には出力を判断し、他のshellスクリプトを実行することができます.
#!/bin/sh
for i in {1..5}
do
echo $i
sleep 1
done
プログラム出力:
1
2
3
4
5
別のshellを使用して出力を連続的に読み取り、いくつかの処理を行うとしますか?
./loop.sh | while read file;
do
echo == $file;
done;
この行shellはまず上のloopを実行した.shは、各出力をループして得られ、前に==が加算され、実行結果は:
== 1
== 2
== 3
== 4
== 5
注意しなければならないのは、このshellはpoolに従って一度に完成したわけではありません.shタイミングの出力、while read file構文は対応することができます
出力をキャプチャして処理し、実際には出力を判断し、他のshellスクリプトを実行することができます.