Cp

如何將文件從另一個目錄複製到目前目錄?

  • October 12, 2020

作為學校作業的一部分,我遇到了這個問題:

截屏

**注意:**如果上圖中難以閱讀,這裡是目錄樹:

$ tree
.
`-- sample_dir1
   `-- sample_dir
       |-- admin
       |-- cambridge
       |   |-- cafeteria
       |   |-- library
       |   `-- security
       |       |-- annex
       |       |-- building
       |       `-- parking
       |-- faculty
       |-- history.exe
       |-- markham
       |   |-- annex
       |   |-- building1
       |   `-- parking
       |-- oxford
       |   |-- outline.doc
       |   |-- programming
       |   |   `-- report.pdf
       |   `-- security
       `-- stenton
           |-- gen_ed
           `-- lib_arts
               |-- english.txt
               `-- match.doc

15 directories, 11 files

我嘗試執行以下命令:

$ cp ../cambridge/security/parking ./parking2

…但它不起作用。上圖中的問題表明目前目錄是stenton,我們需要複製名為parking(從security目錄中)的文件,並將新文件命名為parking2,並將其放在目前目錄中stenton,使用相對路徑名.

我究竟做錯了什麼?我的cp命令似乎是正確的。

這是一個非常初級的問題。我會閱讀這個手冊頁。但儘管如此,這是你的答案:

cp <SOURCE> .

例如:

我在此目錄中有一個文件:/home/rkah/sample1 該文件稱為:sample

假設我想轉到我的主目錄:/home/rkah/並複製sample/home/rkah/,我將執行以下命令:

cp ~/sample/sample ..符號代表目前工作目錄或目前所在的目錄。

您遇到的問題似乎與您的家庭作業程序有關。

從您對另一個答案的評論中,您嘗試了:

cp ../cambridge/security/parking ./parking2

這是一個在普通 shell 中完全有效的命令。但是,問題很可能是您的測試程序不希望././parking2.

當指定文件的路徑時(幾乎任何程序,而不僅僅是cp),如果路徑上沒有前導/,它就會隱式變為./. 因此,如果您將命令更改為:

cp ../cambridge/security/parking parking2

引用自:https://unix.stackexchange.com/questions/162354