よろしくお願いします。
Cygwinで FTPを使ってUnixのFileを取得するシェルスクリプトを作成しました。
シェルの種類はkshです。
このTOOLをCygwinのcronに仕掛けて自動的にFileを取得するようにしたいのですが、
どうもFTPのところで止まってしまうようです。
Cron設置時にLogを取得したところ
下記のメッセージが出力されていました。
User (10.200.xx.xx(none))
自分のhomeに.netrc ファイルを作成して、FTP時にはUserID/Passwordを入力しなくて済むようにしているので
スクリプトを自分で実行する分には何も入力しなくて言いのですが
cron実行時にはなぜかUserIDの入力を促すところでストップし、プロセスも残ってしまっています。
自動的にUserID/Pawwwordを読み込ませるにはどうしたらよろしいでしょうか?
No.1ベストアンサー
- 回答日時:
う~んもう少し「このプログラム、誰が実行してる?」ってのを意識してスクリプト書くようにしたら良いだろうね。
Q&A方式でお届けします。Q.cygwinのcronって誰が実行しているの?
A.特に設定をいじっていない場合、Windowsの「LocalSystemアカウント」で動作しています。cronから起動されるプログラムも同じです。
Q.cronで実行したプログラムが、私のホームディレクトリを見にいかない。
A.cronはLocalSystemアカウントが実行するので、あなたとは「違うユーザ」になります。なので、他人(=あなた)のホームを見に行くような事はしません。
以上の事から、cronで自動実行するftpコマンドは別個に設定が必要です。
cygwinのftpコマンドは
$ ftp -s:filename
で、filenameに入力する内容を書くとユーザに関わらず自動実行できそうだ。内容は以下のような風にして試してみると良いでしょう。
--------begin of filename--------
open hostname.tld
anmochi
anmochi@hostname.tld
ls
quit
--------end of filename--------
本当はもっと高度で便利な方法が色々あるんじゃけど、とりあえずこの方法を試してみてはどうかな。
anmochiさま、どうもありがとうございます。
教えていただいた様にFTP用のCommandFileを作成して
FTPコマンドに与えたところ、無事に動作しました!
Kshでの記述でしたので
ftp -s:filename
ではなく
cat filename | ftp -n
という記述になりました。
UnixだとcronがHome配下にある.netrcを読み込んでくれますが、
Windowsではビヘイビアが異なるのですね。
勉強になりました。
どうもありがとうございましたm(_ _ )m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
コマンドプロンプトのエラーに...
-
これってパソコンの最適化が完...
-
VBscriptが起動しない?
-
【VB.NET】exeを実行すると「発...
-
「読み取りと実行」と「読み取...
-
バッチファイルの内容を表示さ...
-
VScodeのエラー解決法 Pythonの...
-
16進数の変換処理
-
Accessからバッチ処理を実施し...
-
シェルからCで作った実行ファイ...
-
VBScript(WHS)でWMIを使ってリ...
-
SHELLコマンドがうまく動かない...
-
Excel(エクセル) VBA プロシー...
-
PDFファイルを開き、印刷し、閉...
-
MATLABでssを実行すると、未定...
-
Linux Makefile変数の値をプロ...
-
VBS実行時にコマンドプロンプト...
-
バッチファイルでnslookup
-
BATファイルについて
-
exeファイルを実行するとコマン...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
コマンドプロンプトのエラーに...
-
exeファイルを実行するとコマン...
-
[teraterm] waitコマンドで停止...
-
「読み取りと実行」と「読み取...
-
これってパソコンの最適化が完...
-
VBscriptが起動しない?
-
ネットワーク名が見つかりません
-
hostファイル
-
バッチファイルの内容を表示さ...
-
エクセル フォルダの画像を画...
-
PDFファイルを開き、印刷し、閉...
-
バッチファイルで以下のような...
-
Excel(エクセル) VBA プロシー...
-
VScodeのエラー解決法 Pythonの...
-
NASに移したBATファイルからセ...
-
pythonスクリプトを管理者権限...
-
Excel VBA ステップインが途中...
-
バッチファイルが不正終了して...
-
16進数の変換処理
-
複数のbatファイルを自動実行し...
おすすめ情報