私は非常に多くのMakefileを使用して初心者です。私はこの多かれ少なかれのような変数、更新したいと思います:つまり
LEVEL=0
train:
while (eval_score > previous_eval_score)
make iterate
iterate:
do stuff
write files to /path/to/$(LEVEL)/asdf.txt
$(LEVEL)++
を、すべての反復は、へ/ 1 /そして/パス、最初に/パス//0に、ディレクトリにいくつかのファイルを書き込み、等のようなものである。
明らかに、関数内で変数を更新または再割り当てすることはできません。私はしばらく検索しましたが、満足のいく回答は見つかりませんでした。たぶん私は持っているが、私はすべてを理解していない。私はbashで計算するようなものも試しましたが、最終的にはまだ変数を更新する必要があります。おそらく、私は代わりにファイルを更新するような何かを試みるべきです。
お時間をいただきありがとうございます。
純粋なシェルはここで十分ではないでしょうなぜあなたは説明していただけますか? 'while(eval_score> previous_eval_score);ものをする。ファイルを書き込む。済んでいるのは簡単で表情豊かなようです。 – thiton
こんにちはthiton、あなたの返信ありがとう。また、メイクファイルにはいくつかのスクリプトを呼び出すいくつかの関数が含まれています。そのうちのいくつかは階層的で、私の意見ではうまくいきます。私はそれがもっとエレガントで管理しやすいので、makeを好むでしょう。しかし、あなたはおそらく私もシェルスクリプトを使用することができます。私が解決したい主な問題は、反復が完了するたびに$(LEVEL)変数に1を加えることです。私はそれが重要な変更を加えることなくやり遂げることができるかどうかを知りたいだけです。よろしく、ギデオン – Gideon