電子書籍の厳選無料作品が豊富!

FTP コマンドのスクリプトによって、接続先のあるディレクトリ以下全部再帰的に消去したい場合、
どのように普通書くものでしょうか。
教えていただけたら嬉しく思います。
宜しくお願い致します。

A 回答 (2件)

失礼いたしました。

コマンド間違えてました。

複数ファイルを削除するのにy/nを聞かれないように
prompt
として

削除したいディレクトリの最下層のディレクトリ内の
ファイルを削除し、上の階層へ。
そこでもファイルを全て削除してから上の階層へ。
以下その繰り返しとなるようですね。

mdelete ディレクトリ名/*
rmdir ディレクトリ名

中身のあるディレクトリは削除できないので
ディレクトリ内のファイルをすべて削除してから
ディレクトリの削除の流れになります。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
おっしゃるように、接続先のあるディレクトリ名だけを指定して、それ以下全部のファイルとディレクトリを消すのは無理そうだったので、現在接続先にあるファイルをローカル側に保存しておいて、そのリストをもとに接続先のファイルを削除するようにスクリプトを作成しました。

どうもありがとうございました。

お礼日時:2005/10/13 18:50

中身が空のディレクトリなら


 rmdir ディレクトリ名
で削除できますが、中身のあるディレクトリを
削除するのでしたら
 rm -r ディレクトリ名
で可能だと思います。
しかしそのユーザに権限がないと削除できません。

権限がある場合で、強制的に削除するなら
 rm -rf ディレクトリ名
とすれば 削除するファイルごとに y/n を聞かれずに
削除できるはずです。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
やってみたのですが、接続先に対して、つまりFTPコマンド中の場合は、-r などのオプションはきかないようです。

ちなみにOSはlinuxです。

ftp 中に
rm -r ディレクトリ名
とすると、
550 -r: No such file or directory
というエラーが表示され、
-r をファイル名だと思ってしまうようです。

なにかよい方法はないものでしょうか。

お礼日時:2005/10/13 15:17

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!