- 締切済み
linuxのスクリプト
linuxのスクリプトを用いて計算の効率化を図ろうとしています。 そこで、ファイルの初期値を書き換えて計算していくfor文を作りたいと思っています。 ですが方法がよく分かりません。 教えてくださいませ。 よろしくお願い致します。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- kmee
- ベストアンサー率55% (1857/3366)
> rm *.o # こんなことしなくても、ソースが新しくなったら.oをコンパイルしなおし、.oが新しくなったら実行ファイルをリンクしなおすのがmake命令(とその設定のMakefile)なのですが、それはさておき そのバッチファイル(linux等のOSでbash,tcshなどのシェルで動かすそれは「シェルスクリプト」と呼びますが)で、実行したい条件だけベタ書きするのが、単純明快な方法です.数回使う程度なら、これで十分 #条件1用 rm *.o make || exit 1 実行ファイル名 #条件2用 rm *.o make || exit 1 実行ファイル名 (以下略) #makeに失敗したら終了するようにしました それよりも問題は 条件の指定方法が書いてありませんが....ソースの中に直接書いて、条件変更毎にエディタで書き替えてるのでは? 変化する条件をなんらかの方法で外部から入力できるようにすると、一つの実行ファイルで済みます。シェルスクリプトもすっきりします 例えば、コマンドライン引数で条件を与えるようにすれば、次のようになります。 #実行ファイルのコンパイル # rm *.o ## Makefileをきちんと設定すれば必要なし make || exit 1 #条件1用 実行ファイル名 位置X1 位置Y1 速度1 ... #条件2用 実行ファイル名 位置X2 位置Y2 速度2 ... (以下略) コマンドライン引数の受け取り方は別の話なので割愛します。argc argvで検索すればたくさん出てくるし、ここの質問にもたくさんでてます。
- soaikats
- ベストアンサー率58% (14/24)
レスがつきませんね。 補足をお願いします。 ・OS(できればバージョンも) 例:Windows、マック、Linux ・現在実装している機能 例:ファイル一覧を取得するバッチ。
補足
OSはLinuxのFedora 8です。 バッチファイルに書いてあることは、 rm *.o make 実行ファイル名 です。 運動方程式を解く数値計算をしているのですが、その初期条件である位置や速度やタイムステップなどを自動的に変えていきたいです。 宜しくお願いします。