3つのパラメータを必要とするbashスクリプトがあります。
$ do_something foo bar baz
そして、それぞれ3つの異なるパラメータを持つ複数行を含むファイルです。
スクリプトをcronjobとして実行したいと思います。スクリプトが呼び出されるたびにdo_something
ファイルの1行を呼び出し、その行の3つのパラメータを渡す必要があります。次回呼び出されると次の行を実行する必要があるため、その行を処理するにはn
呼び出す必要があります。ファイルの最後の行を処理する場合は、次回は最初から始める必要があります。do_something
n
私の解決策は、毎回ファイルの先頭から処理された行を削除して尾に追加することでしたが、場所を記憶するためにこれらのすべてのディスク書き込みを実行するのは面倒です。最後の行へのポインタを含む他のファイルがあるかもしれませんが、3つのファイルは単純な操作には適していません。より良い解決策はありますか?
答え1
もちろん、ファイルを再構築する必要がある場合は、少なくともsed
次のようにスタイルを設定できます。
sed -i '1 { h; d }; $ G' file