2016-08-25 12 views
2

ディレクトリが存在しない場合は、LFTPを使用してディレクトリを作成します。LFTP - 存在しない場合はディレクトリを作成します。

これはすでに動作しません:それは "ワンライナー" でなければなりません

lftp -c "open -u user,pass server; mkdir /test

をディレクトリがすでに存在する場合

lftp -c "open -u user,pass server; mkdir -p /test

は失敗します。

mkdir:Zugriff nichtmöglich:550-ディレクターを作成できませんY:ファイルが使用16個のファイル(0%)が存在する - 認可:50000個のファイル使用1286621のバイト(0%) - 認可:5.12億KB(/ TEST2)

をしかし、ディレクトリが存在しない場合、それは失敗しません。これをもっとエレガントにするにはどうすればいいですか?

+0

これはGoogleで検索しましたか?私はいくつかの結果を得ています:[this](https://github.com/welaika/wordmove/issues/103)と[this](http://stackoverflow.com/questions/4171236/lftp-mkdir- p-doesnt-work-with-sftp-protocol)である。 つまり、最新バージョンのlftpを使用していますか? – Matthias

+0

はい、私はしようとしました。 LFTPは 'LFTP |バージョン4.0.9 | Copyright(c)1996-2010 Alexander V. Lukyanov'がレポからインストールされています。 – MyFault

+0

ええ私はそこに答えを見つけることができないようです。しかし、LFTPの新しいバージョン(https://lftp.yar.ru/news.html)があります。アップグレードすると、それが役立つかどうかを調べることができます。 – Matthias

答えて

2

を必要に応じて、あなたがにmkdir -fオプションを使用することができ、親ディレクトリを作りますエラーメッセージを抑制します。このオプションは4.5.2のバージョンから利用可能です。最新のlftpバージョンは4.7.3です。

0

あなたはlftpを最新のバージョンにアップグレードすることができない場合は、これを使用することができます:

lftp -c "cd /my/new/directory || mkdir -p /my/new/directory" 

、それを入力することはできません場合にのみディレクトリが作成されます。

関連する問題