ベストアンサー HTMLからのシェルスクリプト呼び出し 2005/10/24 10:48 技術的に可能かどうか興味があるので教えてください。 HTMLファイルから、シェルスクリプトを呼び出す方法はありますでしょうか? 環境は、Solaris10、Apache、Perl使用中です。 みんなの回答 (1) 専門家の回答 質問者が選んだベストアンサー ベストアンサー ex_hmmt ベストアンサー率48% (726/1485) 2005/10/24 11:45 回答No.1 えーと、CGIやSSIでシェルスクリプトを使う事は可能です。 以下の本とかが良いでしょうか。 http://www.linux.or.jp/bookreview/MasteringCsh.html 広告を見て全文表示する ログインすると、全ての回答が全文表示されます。 通報する ありがとう 0 カテゴリ [技術者向] コンピューターOS(技術者向け)Solaris系OS 関連するQ&A シェルスクリプト間で排他をとりたい 環境 linux(redhat) 使用シェル bash シェルスクリプトAとシェルスクリプトBを作成し、 シェルスクリプトAが動作している間は、シェルスクリプトBの動作を禁止したいと考えています。 例えば、シェルスクリプトAが起動している状態で、シェルスクリプトBが起動されたとき、シェルスクリプトBは、シェルスクリプトAが起動していることを検知して、自発的に処理を終了するようにしたいと考えています。 上記のような仕組みをシェルスクリプトで実現可能でしょうか? 基本的には、シェルスクリプトの先頭で、ある資源のロックを行い、終了時にロックの解放ができれば、その仕組みは実現可能と考えています。 (シェルの異常終了時は、ロックが自動的に解放されることが望ましい) 上記のようなことをシェル(bash)で実現可能でしょうか。 bash単独での方法、もしくはbashからperl,C言語作成の実行モジュールを呼び出す方法でもかまいません。 (ちなみにperl(もしくはC言語作成のモジュール)単独では実現可能なことはわかっています) シェルスクリプトのbashとperlについて シェルスクリプトのbashとperlについて 今さら気づいたのですが、PerlもUNIXのコマンドやシェルスクリプトとして使用できるということでしょうか。 RubyやPHPをUNIXのコマンドやシェルスクリプトとして使用することはできますでしょうか。 学ぶとしたら、bashとPerlのどちらが良いでしょうか。 また、シェルスクリプトはどんな用途や利点がありますでしょうか。 Webアプリケーションによるバックアップやログをタイマーでセットして自動的に取得したりすることは可能でしょうか。 シェルスクリプト+perl シェルスクリプト中で1行だけperlを利用したいと思っています。 しかしシェルスクリプトで利用している変数をperlに持っていく方法が分からず悩んでいます。 ---------------------- #!/ban/bash hoge="hogehoge" perl -e ・・・ ←この中で$hogeを利用したい ---------------------- perlですべて書き直せばできるのですが、1行のためだけに、すべてを修正するのもどうかと思いましたので質問させていただきました。 もしご存知の方いらっしゃいましたらお教えください。 ネットワークエンジニアとは?技術職の未来を考える OKWAVE コラム 趣味のプログラミング、シェルスクリプトでやるなら?またはPerl? 新人SEです。仕事でUNIXのシェルスクリプトを使っているのですが休日にも趣味でシェルスクリプトで何か書けたらいいと思っています。 しかし趣味のシェルスクリプトとなると、何を書いたら楽しめるか・便利になるのかあまりイメージが湧きません・・自宅でサーバ管理などしてるわけではないので、クライアント側では何かシェルスクリプトを使うメリットがあるのか分からないのです。 ちなみに、シェルスクリプトが趣味になりそうになかったら、同じUNIX系ツールということでPerlを覚えようかとも思っています。Webアプリの作成などにも興味ありますし・・ 趣味のシェルスクリプト、何かいい例などありますでしょうか?関連してPerlについてでもいいので何か教えて頂けると嬉しいです。 シェルスクリプトのBシェル(Bourne)に出てくる、$0,$1,$2 シェルスクリプトのBシェル(Bourne)に出てくる、$0,$1,$2...のような位置パラメタや、$?,$$,$!,$-のような特殊変数がありますが、これはPerlやRubyもあるようですが、意味や効果、やり方等は同じでしょうか。 当方はPHP,JavaScriptしか触れていませんし、PHPやJavaScriptは、そのような位置パラメタや特殊変数は見当たりませんでした…。 つまり、PerlやRubyはUNIXのコマンドから誕生したスクリプト言語ということでしょうか。 こういった位置パラメタや特殊変数はPerlやRuby以外に他の言語にもありますでしょうか。PythonとかCとかJavaとか…。 また、Bシェルを学んでいる途中ですが、シェルスクリプトの中にはbourne以外にもbashやC Shell,zsh,Perlがありますが、何故Perlが入っているのでしょうか。 Perlをやっている方は別途シェルスクリプトをやる必要はないということでしょうか。 シェルスクリプト シェルスクリプトに関しては、まったくの初心者です。 OSは、SolarisとLinuxですが、シェルスクリプトを利用して下記のような自動実行プログラムを作りたいのですが、どなたかご教授下さい。 一台のWWWサーバのログ(例:access.log)を、1日に一回(出来ましたら朝の5時)に別サーバに送信するプログラムなのですがいかがでしょうか?このとき、出来れば送信先のファイル名は、送信した日付(例:20020222.log)にしたいです。説明不足かも知れませんが、ひとまずこれでお願いします。 シェルスクリプト よく回りの人が「シェルを叩く」と表現しているのですが 「シェルスクリプト」の中にJavaScriptは含まれているのでしょうか? とてもかけ離れてるイメージなのですが。 以下引用 複数の処理(コマンド)をまとめて行なうことのできるスクリプトである。スクリプトとは、機械語への変換作業を省略した簡易プログラムのことで、代表的なものにはPerlやVBScript、JavaScriptなどがある。また、シェルとは与えられた指示をOSの中核部分に伝えるソフトウェアのことである。 perlスクリプト内でシェルコマンドを実行するには?? タイトル通りなのですが、perlスクリプト内でシェルコマンドを実行させる方法が分からなく、困っています。 実行したいシェルコマンドはUNIXのcrontab なのですが・・。 また、perlスクリプト内以外でシェルコマンドを実行する方法はあるのでしょうか?? どなたか分かる方いらっしゃいましたらご教授いただけると幸いです。よろしくお願いします。 sudoでシェルスクリプトを実行させたい /usr/bin/sudo を使って、xxx.shを実行させたいので、設定でxxx.shを許可しました。 その後Apacheで動くCGI(perlスクリプト)から、``を使って実行させようと考えています。 このときにこのxxx.shがうまく動きません。多分シェルにアクセスできないのだと思いますが、どうしたらこのスクリプトをroot権限で動かす事ができるようになるのでしょうか。関係あるかどうかわかりませんが、xxx.shの中身はディレクトリ作成コマンドなどです。ネットで検索したら、シェルスクリプトだけ許可にすればよいとあったのですが・・。セキュリティ的には/bin/shを許可するのはまずそうな気がするのですが、こちらを許可してもよいものでしょうか。 環境等 xxx.sh 755 所有者(user1) Apache実行ユーザ (apache) CGIの実行ユーザ(apache?) 挑戦したコマンド(とアパッチのログ) `/usr/bin/sudo sh ./xxx.sh`; ->パスワード求められます (/bin/shの権限がない?) `/usr/bin/sudo ./xxx.sh`; ->/usr/bin/sudo: unable to exec ファイルのパス No such file or directory (xxx.shのファイルの場所はあってます) `/usr/bin/sudo フルパス/xxx.sh`; ->/usr/bin/sudo: unable to exec ファイルのパス No such file or directory (xxx.shのファイルの場所はあってます) 不足の点などあればご指摘ください。 シェルスクリプト Apache centos6.6 シェルスクリプトの質問です。 shファイルを作りたいです。 home/user/log の中にある access_logとerror_logをgzに圧縮したいです。 条件は1日前のログです。 圧縮した後gzのファイルしか残らないのですが、次のアクセスログとエラーログはちゃんと出力されますか? どうかお願いします シェルスクリプトの引数について test.sh '*.c' といったコマンドを入力した時に、 シェルスクリプト内で引数$1を受け取ったときに$1='*.c'となるのではなく、 カレントディレクトリ内にある'*.c'の正規表現にマッチするファイルが入ってしまっています。 例)カレントディレクト内にaaa.cファイルbbb.cファイルといったファイルがある時は、 $1=aaa.c bbb.cとなっています。 '*.c'の正規表現自体をシェルスクリプト内で受け取る方法はないのでしょうか? シェルはbashを使用しています。 シェルスクリプトの制御構文について いつもお世話になっております。 当方、RHELで bashシェルを使用しており、制御構文を用いて 『 file1.txt にある数値が file2.txt に含まれているかどうか、また、いくつ含まれているかカウント』するスクリプトを作りたいと思っております。 ファイルの中身は下記のようになっています。 [file1.txt] [file2.txt] 10250 10064 10298 10250 11674 12866 13298 13119 28952 13201 34966 13298 37641 37641 上記の例であれば、10250,13298,37641 が共通のものなので その数 3 というものを求めたいのです。 while文やfor文を用いて繰り返し処理をするのでは、と思い調べてはみたのですが 知識が乏しく構文を書くことが出来ませんでした。 また、PerlやRuby等使わず、シェルスクリプトのみで実行したいです。 勉強不足でとても初歩的なことを伺っているとは重々承知ですが、 どなたかお力を貸していただけないでしょうか。 宜しくお願いいたします。 AIは使う人の年齢や市場にも影響する?人工知能の可能性 OKWAVE コラム シェルスクリプトについて とあるUNIXサーバが1台あるとします。 でそのマシン上の管理プログラムが同一マシン上にある 「シェルスクリプト(bash)」をキックするとします。 となるとそのシェルスクリプトの実行者(?)は Unixにログオンしているユーザーになるのでしょうか?。 目的としてはそのログインしているユーザーの環境変数 をシェルから参照したいのですが・・ 考え方がWindowsなもので。。すみませんが よろしくお願いします。 シェルスクリプトをバックグラウンドで いつもお世話になってます 初歩的な質問かもしれませんが、自力で解決できなかったのでお力をお貸しください 2点質問があります、シェルはbashです 1 シェルスクリプトを記述したファイルをダブルクリックで使っています このファイルをダブルクリックした時にターミナルを表示させないでシェルスクリプトだけ実行する事はできないでしょうか? 2 シェルスクリプト終了後、ターミナルが閉じません、スクリプト終了と同時にターミナルを閉じる方法を教えてください [プロセスが完了しました]というメッセージが出てターミナルそのものが閉じません よろしくお願いいたします シェルスクリプトの切り替え? シェルには種類がありユーザーはそれを切り替えることによって好みのシェルを自由に選択することが出来る。 というのはわかりました。 が、シェルスクリプトを記述して実行する場合はどうなんでしょう。 bornシェルで記述したシェルスクリプトをcshから実行できるのでしょうか。 実行者とスクリプト記述者が同じシェル環境で操作しないといけないのかと思い質問しています。 ひょっとして意味のわからない質問かも知れませんがお願いします。 シェルスクリプトについて シェルスクリプトについて Linuxで先頭にスペースが入っている行をひとつ上の行につなげたいと考えています。 その場合、シェルスクリプトはどのように書けばよいかご教示願います。 【ファイル内容】 aaa △bbb ccc ddd (b行の先頭のみスペース(△)が入っています。) 【変換後のファイル】 aaa bbb ccc ddd シェルスクリプトをローカルで動作させるには cronジョブが使えるレンタルサーバーを使用しており、cronジョブから起動するshスクリプトを作ろうと思っています。 そこでシェルスクリプトを簡単に書こうと思っているのですが、プログラムはphpしかわかりません。勉強するためにはローカルで実行できる環境が必要だと思っています。 ネットでよく調べてみたのですが、シェルスクリプトをローカルで動作させる方法がわかりません。コマンドプロンプトから実行できたりしないんでしょうか? シェルスクリプトで いくつかのテキストファイルがあって, その中で内容が重複するもの(ファイル名は違うが中身は同じ)ファイルをみつけるシェルスクリプトが書きたいのですが, どのように書けばよいでしょうか. というかそのように書くことは可能でしょうか. ぶしつけですいませんが,回答お願いいたします. シェルスクリプトについて シェルスクリプトについて教えてください このようなテキストファイルがあるとします。 .1 あ い う え お .2 か き く け こ .3 さ し す せ そ このファイルを「.」で区切ってそれぞれのファイルに分割するには どうすればいいのでしょうか? 結果として、 .1 あ い う え お と言うファイルや .2 か き く け こ と言うファイルに分けたいのです。 シェルスクリプトで複数ファイルを交互に操作する方法 Bシェルのスクリプトで複数のファイルを交互に操作したいと考えています。 例えば、 A.txt A A B.txt B B という2つのファイルがあったとして、これを交互に読み取り、 C.txt A B A B というファイルを作成したいと考えています。 現在は1行ごとに別ファイルを作成し、最後にそれをマージするという変な方法をとっています。 awkやperlを使用しないで、純粋にBシェルのスクリプトだけでスマートに実現するにはどのような方法がありますでしょうか。 よろしくお願いします。 注目のQ&A 「You」や「I」が入った曲といえば? Part2 結婚について考えていない大学生の彼氏について 関東の方に聞きたいです 大阪万博について 駅の清涼飲料水自販機 不倫の慰謝料の請求について 新型コロナウイルスがもたらした功績について教えて 旧姓を使う理由。 回復メディアの保存方法 好きな人を諦める方法 小諸市(長野県)在住でスキーやスノボをする方の用具 カテゴリ [技術者向] コンピューター OS(技術者向け) Windows系OSLinux系OSBSD系OSSolaris系OSiOS(技術者向け)Android OS(技術者向け)その他(OS) カテゴリ一覧を見る OKWAVE コラム 突然のトラブル?プリンター・メール・LINE編 携帯料金を賢く見直す!格安SIMと端末選びのポイントは? 友達って必要?友情って何だろう 大震災時の現実とは?私たちができる備え 「結婚相談所は恥ずかしい」は時代遅れ!負け組の誤解と出会いの掴み方 あなたにピッタリな商品が見つかる! OKWAVE セレクト コスメ化粧品 化粧水・クレンジングなど 健康食品・サプリ コンブチャなど バス用品 入浴剤・アミノ酸シャンプーなど スマホアプリ マッチングアプリなど ヘアケア 白髪染めヘアカラーなど インターネット回線 プロバイダ、光回線など