
Linuxでファイルを転送するシェルを作成しております。
コピー元と同じ階層構造でコピーしたいのですが、
ftp内で mkdir をする時にオプションの -p は使えないのでしょうか?
さきほどやってみたのですが、うまくいきません。
Target="share/1G/1T"
ftp -i -v -n 10.156.1.xxx <<END
user UserName PW
bin
mkdir -p $Target *1G/1Tというフォルダを一気に作成したい。
cd $Target
#put $Target/test.txt /Target/test.txt
bye
END
ftpのコピー先に、フォルダ階層をいっきに作成する方法はありますでしょうか?
No.2ベストアンサー
- 回答日時:
使えません。
Linuxのmkdirコマンドとftpのmkdirコマンドは似ていて非なるものです。そこで、以下のようにすれば期待されている動作に近い形になるかと思います。
Target="share/1G/1T"
( echo 'user UserName PW'
echo 'bin'
IFS=/
for subdir in "$Target"; do
echo "mkdir $subdir"
echo "cd $subdir"
done
#echo 'put $Target/test.txt /Target/test.txt'
echo 'bye' ) | ftp -i -v -n 10.156.1.xxx
ただ、上記はディレクトリが最初から存在していた場合についてあまり
考慮されていません(処理は継続されますが、550のコードが出力されてしまいます)
お礼がおそくなりすみません。
ありがとうございました。
ftpの特性がわかってきました。
また、非常に参考になりました。ありがとうございます。
No.1
- 回答日時:
ftpにこだわらないのならrsyncはどうでしょうか、相手が空のディレクトリならそのままコピーになりますし、--deleteをつけると余分なものは消してくれます。
参考
http://www.maruko2.com/mw/rsync_でディレクトリの同期(バックアップ)
「ssh と組み合わせリモートマシンにコピーする」
あたりが参考になるのではないかと
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
xcopyで特定のファイルのみをコ...
-
FTPのバッチファイルで日付を引...
-
コマンドにてテキストファイル...
-
【DOSコマンド】for の デリミ...
-
バッチファイル 指定行の切り出し
-
コマンドプロンプトで相対パス...
-
echo "abc" >> test.txt で、先...
-
.txtって、縦書きにはならない...
-
txtってルビも振れませんか?
-
ダウンロードするとメモ帳に表...
-
echoの出力の最後のスペースを...
-
エクセルのVBAについて とある...
-
コマンドプロンプトの「%1」と...
-
チームズのチャット画面にファ...
-
「win11-23H2」を「win11-24H2...
-
コマンドプロンプトのエラーに...
-
大量のフォルダからひとつのフ...
-
Thunderbirdで社内共有フォルダ...
-
バッチでテキストファイルから...
-
「営業秘密の漏洩」について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
xcopyで特定のファイルのみをコ...
-
echoの出力の最後のスペースを...
-
echo "abc" >> test.txt で、先...
-
コマンドプロンプトで相対パス...
-
【VBA】テキストファイルから特...
-
リダイレクト >> を複数のファ...
-
コマンドにてテキストファイル...
-
コマンドプロンプトで標準エラ...
-
コマンド実行結果を環境変数に...
-
バッチファイル 現在のフォルダ...
-
バッチファイル 指定行の切り出し
-
bashで、gotoのようなラベルに...
-
NULLの置き換えについて
-
UNIX ファイル存在チェックの方法
-
ワードのテキストボックスの中...
-
.txtって、縦書きにはならない...
-
複数テキストファイル連結につ...
-
バッチコマンドの「set」で入力...
-
ダウンロードするとメモ帳に表...
-
バッチファイルで改行の出力
おすすめ情報