GNU/Linux >> Linux の 問題 >  >> Linux

Mv *フォルダ(「移動できません」エラーを回避)?

この質問にはすでに回答があります :「mkdirfoo; svn mv * foo”

(3つの回答)
8年前に閉鎖されました。

何千ものファイルを新しいフォルダに移動したいときはいつでも、同じ問題が発生します。

> mkdir my_folder
> mv * my_folder
mv: cannot move 'my_folder to a subdirectory of itself 'my_folder'

上記のエラーは無害だと思いますが(そうですか? )それを回避する方法があるかどうか疑問に思っています。

重要な場合は、zshのソリューション、またはさまざまなシェルでうまく機能するソリューションに興味があります。

承認された回答:

zshでは、extended_glob オプションを有効にすると、~を使用できます グロブからパターンを除外して、次を使用できるようにします:

setopt extended_glob
mv -- *~my_folder my_folder

または、否定演算子を使用します(extended_globを引き続き使用) ):

mv -- ^my_folder my_folder

ディレクトリ名を2回入力しないように、中かっこを使用してください:

mv -- {^,}my_folder

bash(それを使用している他の回答を求める人向け)では、Kshスタイルの拡張グロブを使用できます:

# If it's not already enabled
shopt -s extglob
mv -- !(my_folder) my_folder

その構文をzshで使用することもできます ksh_globを有効にした場合 オプション。


Linux
  1. WifiエラーWpa_supplicant?

  2. HTTPエラーコードおよびその他のWebサイトエラーを理解する

  3. ubuntu 11.04 での autoconf エラー

  1. とは :-!! Cコードで?

  2. フォルダを正確に複製する方法

  3. gemをローカルフォルダにインストール

  1. Bashスクリプトでのエラー処理

  2. 例でBashエラー処理を学ぶ

  3. make でコンパイルできません |致命的なエラー デバイスにスペースが残っていません