2016-11-02 53 views
-5

我想將git.sh複製到永久文件的下面/ root 然後我用這個 mv git.sh /root/ 是一個mirecle/root下的所有文件都被刪除了。爲什麼命令mv刪除所有文件?

你能解釋命令後會發生什麼嗎? 什麼mv git.sh /root/*的含義? 你能給我正確的命令來複制一個文件到/ root /下面的文件嗎?

enter image description here

+1

不是編程問題 - 試試[su]? –

+0

複製使用「cp」,「mv」用於複製。不要在目標中使用通配符 - 它沒有意義。 * - 表示所有匹配。 mv/src/*/dest /將源文件夾中的所有文件移動到dest文件夾中。移動是一些操作複製+刪除原來的。沒有像預期的那樣有奇蹟。冰川 –

回答

1

命令mv移動文件。當目標中的文件存在時,它將被替換。正確的複製文件命令是cp。它的使用方式與mv相同。

命令mv git.sh /root/*將用目錄包含的所有名稱替代通配符字符*。然後有幾個情況:

  1. /根目錄包含多個文件或目錄:命令將失敗
  2. /根目錄包含一個文件:git.sh將被移動和替換目錄中的文件/根
  3. /根是空的:git.sh將被移動爲git.sh到/根

mv將刪除源但cp保持它。

目標路徑最好帶文件名,例如mv git.sh /root/git.sh。在移動多個文件時,使用目標路徑僅限於沒有文件名或通配符字符的目錄,例如mv dir/* /root/。當你想移動子目錄的目錄時添加-R參數。

使用man mvman cp瞭解更多信息。

相關問題