1. ホーム
  2. linux

[解決済み] sudo mv home/* *」というコマンドは何をするのですか?[クローズド]

2022-02-11 13:31:35

質問

このコマンドの各パーツは知っています。

sudo mv home/* *

  • sudo : スーパーユーザで行う場合は、root権限で実行します。
  • mv : ファイルまたはディレクトリを移動します。
  • home/* mvコマンドの引数です。ホームディレクトリの内容を示す。アスタリスクは * はワイルドカードで、カレントディレクトリ内のファイルを辞書順に並べたリストに展開されます。

次の引数は、運命のフォルダーです。しかし、運命のディレクトリにアスタリスクを指定し、コマンドを実行すると、そのフォルダは完全に消えてしまいます。では * この場合

どのように解決するのですか?

例えば、次のようなものがあるとします。 /home/userA , /home/userB/home/userC . さらに、次のようなディレクトリでこれを実行するとしましょう。 1.txt , 2.txt と、ディレクトリ 3.d .

そのような状況下では、次のように展開されます。

sudo mv /home/userA /home/userB /home/userC 1.txt 2.txt 3.d

つまり、両方のグロブが展開され、最初のグロブは /home そして、その結果は、すべてのものがディレクトリ 3.d .


<サブ これはオフトピックな質問に対する回答であるため、フラグ付きコミュニティWikiです。