株式会社ヴァンデミックシステム

Blog

<スポンサーリンク>

5行のファイルを読み込んでecho出してみると普通にいける

ssh経由でechoしてみると5行読み込んでいるはずが、1行だけ読み込んで抜けてしまっている

対処法其の一 「for line in cat readfile」でよみこむ

対処法其の二 「ssh -n」オプション(バックグラウンド実行)を使う

どうやら、sshコマンド実行時に標準入力が切り替わり、ローカルホストからの標準入力を停止し、リモートホストからの標準入力を受け付けるみたい。
while read line実行時は、ループ処理開始前にファイルを読み込み、その中でsshコマンドを実行、その後再びreadコマンドを実行する際にファイルが既に閉じられているからループを抜けてしまうみたい。

参考
http://www.m-bsys.com/error/whileread-ssh

<スポンサーリンク>

コメントを残す

Allowed tags:  you may use these HTML tags and attributes: <a href="">, <strong>, <em>, <h1>, <h2>, <h3>
Please note:  all comments go through moderation.

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)