- ベストアンサー
シェルスクリプト
toysmithの回答
リモートマウントによる方法はGINOさんが回答されているのでftpでの方法を。 補足を読みましたがリモートログインの部分が疑問点だと思います。 ftpはリモートホストに接続したときにログインを試みます。 その時、(ローカル側の)ユーザのホームディレクトリに.netrcファイルが存在すると、その記述内容を参照してログインします。 .netrcの記述は machine リモートホスト名 login リモートアカウント password リモートパスワード です。 ただし、この方法は「テキストでパスワードを保持してしまう」という意味でセキュリティ的に問題を含みます。 ftp .netrcに定義がある状態ならスクリプトの定義は ftp リモートホスト名 << $ binary put $DATE.tar bye $ ("<<"はヒアドキュメントです。シェルによっては記述法が違うかもしれないのでご注意ください) リモートホストのログインディレクトにputされると思います。 参考URLはJMプロジェクトのftpとnetrcのmanページ日本語訳です。
関連するQ&A
- シェルスクリプトで困っています 2
度々申し訳ございません。 現在、Linuxマシン1からLinuxマシン2へTelnetでログインし、Linuxマシン2上にあるシェルスクリプト(/bin/sh)を実行し、Linuxマシン2上のプログラムを実行した後、Linuxマシン2からログアウトするシェルスクリプトを作成中です。 その、Linuxマシン2からログアウトする際に、 "exit"を記述しているのですが、その"exit"がTelnetログアウトの意味で実行されず、シェルスクリプトを終了するの意味で実行されていて困っています。 どなたか上手くTelnetからログアウトできるようにシェルスクリプトを組む方法をご存知ではないでしょうか?もし判りましたらご教授下さい。 よろしくお願い致します。
- ベストアンサー
- Linux系OS
- シェルスクリプトの実行
一台目のLINUX上でプログラムを実行しLANでつながれたもう1台のLINUXにあるシェルスクリプトを実行するにはC言語でどのようにプログラミングをすれば可能でしょうか? プログラムと同じ場所ならsystem(コマンド)で出来るんですよね? telnetとか使いますか?それとももっと単純に出来るのでしょうか?
- ベストアンサー
- C・C++・C#
- シェルスクリプトについて
とあるUNIXサーバが1台あるとします。 でそのマシン上の管理プログラムが同一マシン上にある 「シェルスクリプト(bash)」をキックするとします。 となるとそのシェルスクリプトの実行者(?)は Unixにログオンしているユーザーになるのでしょうか?。 目的としてはそのログインしているユーザーの環境変数 をシェルから参照したいのですが・・ 考え方がWindowsなもので。。すみませんが よろしくお願いします。
- ベストアンサー
- その他(プログラミング・開発)
- Linux シェルスクリプトについての質問です
Linux上で 日頃、簡単な シェルスクリプトを書き実行していますが、 この頃、より自動化をしたいと思い、シェルスクリプトの中に キーボードのキーを 押したかの様な動作をさせられないかを考えています。 やりたいことは、シェルスクリプトを実行すると、knoppix の partimage にてファイル等を 指定して、1行で実行は出来るのですが、続行するのは F5 キー を押したり Enter キーを押したりの作業が必要です。 この問題は、何か他ので対処が出来るのかもしれないですが、今後、どうしても キーをおさなきゃならない環境が来たときにも対処が出来るように シェルスクリプトでこのような事が可能なのかを知りたく質問させて頂きました。 どなたか分かれば回答を宜しくお願いします。
- ベストアンサー
- Linux系OS
- シェルスクリプトで実行したコマンドをタイムアウトさせる方法
シェルスクリプト超初心者です。 ログファイルを『tail -f』で開き、その内容を一時的な テキストファイルにリダイレクトで書き出します。 その処理を、一定時間経過後に自動的に終了する。 といった内容のシェルスクリプトを作成したいと思っています。 しかし、「tail -f」を実行したプロセスを一定時間経過後に どういう風に終了させればよいのかよく分かりません。 実行したプロセスを一定時間経過後に終了させるような 方法が何かありませんか? ちなみに実行環境は、Solaris9です。 【コマンド例】 tail -f ./"ログファイル" > ./temp.txt かなり、初歩的な質問で申し訳ありませんが 宜しくお願いします。
- ベストアンサー
- Solaris系OS
- cronでシェルスクリプトが実行されない
Linuxでファイルのバックアップを取るため backup.shというシェルスクリプトを組み、コマンドから実行する場合問題ないことを 確認しています。ところがcronに設定し自動実行すると内容が実行されておりません。 /var/log/cronを確認したところ時間通り実行されているというログは残っています。 /var/spool/cron/にrootというファイルを作成し 00 23 * * * /BACKUP/backup.shを実行させたいのです。 なぜ、手動の場合は問題がないのにcronで設定すると問題が生じるのでしょう? もし、お分かりの方は教えてください。 OSはRed Hat Linux release 8.0 (Psyche)です。
- 締切済み
- その他(ITシステム運用・管理)
- シェルスクリプトをローカルで動作させるには
cronジョブが使えるレンタルサーバーを使用しており、cronジョブから起動するshスクリプトを作ろうと思っています。 そこでシェルスクリプトを簡単に書こうと思っているのですが、プログラムはphpしかわかりません。勉強するためにはローカルで実行できる環境が必要だと思っています。 ネットでよく調べてみたのですが、シェルスクリプトをローカルで動作させる方法がわかりません。コマンドプロンプトから実行できたりしないんでしょうか?
- ベストアンサー
- その他(プログラミング・開発)
- シェルスクリプトとphpを使ったプログラミングについて
UNIXサーバで、現在、シェルスクリプトやphpを使ってプログラムを書いています。 今は「csh cmd ファイル名」という形でシェルスクリプトを実行しています。このままではプロンプト画面で味気ないので次のようにしたいのですが、やり方が分りません。 まず、phpやhtmlで作成したファイル提出画面にてファイルを提出してもらいます、そして、それを受け取ります。その時例えば送信ボタンを押すと思うのですが、そのボタンを押したらファイル名を受け取り「csh cmd ファイル名」が実行されるといふうにしたいのです。何かいい方法があれば教えて頂きたいです。phpでなくてもいいので、お願いします。
- ベストアンサー
- PHP
- シェルスクリプト間で排他をとりたい
環境 linux(redhat) 使用シェル bash シェルスクリプトAとシェルスクリプトBを作成し、 シェルスクリプトAが動作している間は、シェルスクリプトBの動作を禁止したいと考えています。 例えば、シェルスクリプトAが起動している状態で、シェルスクリプトBが起動されたとき、シェルスクリプトBは、シェルスクリプトAが起動していることを検知して、自発的に処理を終了するようにしたいと考えています。 上記のような仕組みをシェルスクリプトで実現可能でしょうか? 基本的には、シェルスクリプトの先頭で、ある資源のロックを行い、終了時にロックの解放ができれば、その仕組みは実現可能と考えています。 (シェルの異常終了時は、ロックが自動的に解放されることが望ましい) 上記のようなことをシェル(bash)で実現可能でしょうか。 bash単独での方法、もしくはbashからperl,C言語作成の実行モジュールを呼び出す方法でもかまいません。 (ちなみにperl(もしくはC言語作成のモジュール)単独では実現可能なことはわかっています)
- ベストアンサー
- その他(プログラミング・開発)
補足
またまたありがとうございます。 わけがわからなくなってきました。 すみませんがもう一度最初から、お願いできますでしょうか? ちなみに、現在の仕様OSはSolarisです。 実行結果が 1Kg0224 ?Invalid command Not connected. ?Invalid command とでます。 DATE=`date +"%y%m%d"` cd access.log $DATE.log まずここで、ファイルはコピーされるのですが、020224というファイルが作成され、拡張子がありません。ls -alでみると、権限のところに .logr--r--と表示されています。 しかも削除しようとすると存在しませんと言われます。 tar cvf $DATE.tar $DATE.log これも、020224と作成され、.tar.r--r--と表示されます。多分上のLogのせいだと思うのですが...。 ftp -n << $ binary put $DATE.tar bye $