
テキストファイルの1行の文字列を読込んで
ftpで、文字列と同名のファイルを別サーバに転送する
shスクリプトを作成したいと思っています。
テキストファイルから読込んだ文字列を変数に格納して
ftp接続後、putで変数を指定すると
『変数名のファイルがありません』
というエラーがでます。
エラーメッセージから、変数が変数として扱われていない。
ファイル名そのものとして扱われていると思います。
テキストファイルから読込んだ文字列をftpで使用するには
どうしたらよいでしょうか?
また、何か代替案はあるのでしょうか?
簡略化したshスクリプトの内容は以下の通りです。
------------------------------------
#!/bin/sh
read filename <./test.txt
ftp -n host_name <<"EOD"
user user_name password
passive
binary
cd /export/test
put filename
bye
EOD
-----------------------------------
No.3ベストアンサー
- 回答日時:
どもです。
え~っと、このような時にはexpectという言語を
使うのが便利が宜しいです。まぁ、perlとかでも
同じような事が出来ますが、、、
で、expectを使用する場合、実環境でコードを
書かないとつらいものがあります。
一応、サンプルを以下に乗せますが、多分動作
しないでしょう。
expect "XX"
となっているところは、FTPで接続しているときに
表示される文字列が来るまで待つって意味なので、
XX
が来るまで待つって感じです。
#!/usr/local/bin/expect
if { $argc < 1} {
puts "Error"
exit 1
}
set fname [lindex $argv 0]
# 要修正
spawn ftp 192.168.100.135
# 要修正 ユーザー名
expect "Name"
expect ":"
send "hogeuser\r"
# 要修正 パスワード
expect "Password:"
send "hogepwd\r"
expect "ftp>"
send "passive\r"
expect "ftp>"
send "binary\r"
expect "ftp>"
send "cd /export/test\r"
expect "ftp>"
send "put $fname\r"
expect "ftp>"
send "bye\r"
expect eof
No.2
- 回答日時:
shell変数の値を参照する場合は、変数名の前に$をつける必要があります。
put $filename
――のように記述してみては。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
同一フォルダにある複数のテキ...
-
EXCELのVBAでEOFを誤認識
-
VBSを使用し、指定フォルダ内の...
-
unixのシェルスクリプトで特定...
-
エクセルのプロパティーでセキ...
-
エクセルvbaでdocuworksprinter...
-
ExcelブックをGoogleスプレッド...
-
xcopyコマンドの進行状況を表示...
-
カンマ区切りのCSVファイルから...
-
エクセルVBAで一つ上の階層...
-
ExcelのVBAでフォルダ指定がで...
-
動かなくなってしまった古いVBA...
-
Excel 相対パス
-
EXCEL 検索時の設定
-
frxファイルの役目
-
エクセルのハイパーリンクがコ...
-
VS2005で"定義へ移動"ができません
-
エクセルで複数のコメントのサ...
-
vbsでファイルやフォルダのコピ...
-
パス名に2バイト文字(マルチバ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【VBA】テキストファイルを指定...
-
EXCELのVBAでEOFを誤認識
-
アスキー、バイナリーの違い、...
-
同一フォルダにある複数のテキ...
-
複数のテキストファイル内の複...
-
Excelにて、フォルダ内のTextフ...
-
uwscでExcelに自動記入
-
テキストファイルの最終行を消...
-
VBSを使用し、指定フォルダ内の...
-
VBAでテキストファイルの件...
-
【VBA】テキストファイルの内容...
-
VBScript(vbs)での行の取得につ...
-
VBでファイルの判定
-
VBでのテキストファイルへ参照...
-
xmlファイルから文字列の読...
-
Java バブルソート
-
shスクリプトでftp接続してファ...
-
句点で改行
-
unixのシェルスクリプトで特定...
-
エクセルのプロパティーでセキ...
おすすめ情報