- 締切済み
linuxのスクリプト
kmeeの回答
- 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で検索すればたくさん出てくるし、ここの質問にもたくさんでてます。
関連するQ&A
- 【Linux】シェルスクリプトについて
Linuxの学習をしています。 シェルスクリプトを使って、1~50までの整数の和を求めるという問題があるのですが解けません…。 とても簡単な問題だとは思いますが、どなたか教えて頂けますでしょうか? 因みに、for文またはwhile文を使うようにという指示があり、標準シェルを用いてます。 宜しくお願い致します。
- ベストアンサー
- Linux系OS
- linuxのシェルスクリプト
linuxのシェルスクリプト シェルスクリプトの質問をどこですればよいのかよくわからないので、ここでさせていただきます。 最近、始めてシェルスクリプトの勉強を始めました。 スクリプトに渡す引数を出力したいと思い、 echo $1 echo $2 echo $3 とかくと、スクリプトに渡した引数が出力されます。 これを、for文で書くと for i in 1 2 3 do echo $i done とねるのですが、これでは1,2,3が出力されてしまいます。 どうなおしたらいいのでしょうか? よろしくお願いいたします。
- ベストアンサー
- Linux系OS
- スクリプトの書き方
過去ログを検索してもなかったので質問させて頂きます。 超初心者ですが何卒宜しくお願い致します。 ある数値データ(CSVファイル)をデータベース(Linuxサーバー:MySql)にUPし、レポートツールからODBCで接続し数値をとりたいと思い、現在このような方法を考えております。 1.まずCSVファイルを自分のPCにDL。 2.CSVファイルをLinuxサーバーにアップロード。 3.アップロードしたCSVファイルをデータベースにインポート。 4.レポートツールからODBCでデータベースに接続し、データの管理。 ここで3.のCSVファイルをデータベースにインポートするためのスクリプトの書き方が全くわかりません。insert文で一個一個うっていけばいいのですが、できれば、スクリプトを書いてcronで自動実行したいと考えております。 どなたか書き方、もしくは3.の方法を説明したサイトなどを教えて頂きたいです。 逆にこうしたほうがいいというご意見なども全然OKです。 宜しくお願い致します。
- ベストアンサー
- Perl
- linuxのfor文についてです。
linuxのfor文(C言語風)を利用して/var/log/httpd/にあるaccess.logのファイルのうち130301~130309のものをls -lで情報を表示したいです。 ここでbashのfor文を使って最後の1文字だけを変化させながらls -lを9回実行するシェルスクリプトを作りたいのですがどのように書いたら良いのかわかりません。 どなたか教えていただけないでしょうか。
- ベストアンサー
- Linux系OS
- Linuxの一斉コピースクリプト
Linuxのスクリプトによって, 複数のフォルダに散らばった同名ファイルを USBにコピーしたいのですが, 例文があれば教えてください。 よろしくお願いいたします…
- 締切済み
- Linux系OS
- Linuxについて
最近Linuxを勉強し始め、Windowsとはまったく違う機能に四苦八苦する毎日です #!/bin/sh for i in $* do echo "copying $i" cp &i $i.bak do という引数に指定した複数のファイルのバックアップを行うスクリプトを作りました このスクリプトはあっていますか? どこか間違っていないか心配でしかたありません また、バックアップを行う際にもし既にバックアップファイルが存在する場合には 上書きをしないように、警告文を表示したあとにバックアップを行わないような設定にするにはどのようなスクリプトを足せばいいんでしょうか;; 初心者では手に負えません 親切な方のご回答をお待ちしております。
- ベストアンサー
- Linux系OS
- SolarisからLinuxへコピーしたスクリプトについて
Solaris上で動作しているPerlスクリプトがあるのですが、 Linux上で動作させることができないので、困っています。 原因を特定するため、Solarisからコピーしたファイルの 中身を、下記コードに入れ替えた場合と、新規にLinux 上で作成した場合を比べてみると、表示結果が異なります。 solarisからコピーしたファイルを表示すると、 「500 サーバ内エラー サーバー内で、実行中のプログラムが異常終了しました。」 と表示されます。 新規にLinux上で作成したファイルを表示すると、 問題なく表示されます。 これくらいしか分からないのですが、何かアドバイスを いただけないでしょうか? # file test.pl <-Solarisからコピーしたファイルを編集 script text executablerl # file test2.pl <-Linux上で新規作成 test.pl: a /usr/bin/perl script text executable ・コード #!/usr/bin/perl print "Content-type: text/plain\n"; print "\n"; print "Hello!World"; exit(0);
- ベストアンサー
- Linux系OS
- Linuxの起動・終了スクリプト
Linuxで起動・終了時にメール送信する スクリプトを追加したいのですが、どのファイルにて 追加するのが正しいのでしょうか。 またユーザがログオンした際にもメール送信 したいのですが、その際はどのファイルにて設定 すればよいでしょうか。
- ベストアンサー
- その他(ITシステム運用・管理)
- LINUXのユーザ追加スクリプト
Linux上のApacheにおいて、Web上の公開フォームからPOSTされたユーザ名とパスワードで新規のLinuxユーザを作成するスクリプトをPHPかCGIで作ろうとしています。 しかし、なるべく”sudo”を使わない方法を考えているところで、止まっています。 サンプルコードを教えてください。
- 締切済み
- PHP