2011-03-31 97 views
3

例如:在我們需要引用任何目錄時的任何命令。然後我們使用dirnamedirname/dir和dir /在linux終端或dos中有什麼區別?

它們之間有什麼區別呢?

例如, cd dirname VS cd dirname/

cp -R dirname1 dirname2 VS cp -R dirname1 dirname2/ VS cp -R dirname1/ dirname2/

+0

你能顯示你正在嘗試的命令嗎? – 2011-03-31 10:16:17

+0

如果你有一個名爲'foo'的鏈接到一個目錄'bar /'的符號鏈接,'ls foo'將顯示'foo',而'ls foo /'將顯示'bar /'的內容。正如其他人所說,在其他一些情況下,差異很重要。在大多數情況下,你不會注意到。其他示例:如果有一個名爲'directory'的文件(某人犯了一個錯誤,創建了一個預期爲目錄的文件)'mv somefile directory'將默默覆蓋該文件。但是'mv somefile directory /'會抱怨'directory'沒有目錄... – 2011-04-05 13:14:19

回答

1

dirname是目錄。 dirname\是最後一個節點是目錄的路徑。

大多數上下文,你可以使用任何一個,但事實並非總是如此。

通常,如果你想,比方說,一個文件複製到一個目錄中,cp file dirname\弄清楚,你將其複製到一個新的路徑。將可視化file附加到路徑上,成爲dirname\file。符號鏈接工作時,根據需求,當dirname是符號鏈接的文件系統不相當在自動轉換dirnamedirname\那樣聰明,這是最重要的。

0

至少在一個DOS/Windows外殼程序中,通常是沒有區別的。有一個例外,我知道:

如果使用

xcopy somefile C:\somepath 

somepath不存在,XCOPY詢問是否somepath是一個文件或目錄被創建,可使用可避免

xcopy somefile C:\somepath\ 

這將只是創建somepath,並在那裏複製somefile

因此,在這種情況下,somepath\使其更清晰,它是一個路徑。無論如何,通常你指的是已經存在的路徑,所以這兩種情況之間沒有區別。

+1

您也可以查看_Window_的「[robocopy]」(https://technet.microsoft.com/en-au/library/cc733145.aspx)「命令。 – will 2016-03-07 13:56:14

1

對於Linux的shell:一般情況下,任何一個會工作。假設這兩個文件名實際上是目錄,包括或省略最後的斜槓應該是可選的。

案例,你可能會注意到一個區別:如果目錄實際上是一個符號鏈接到一個目錄,使用最終

  • /失敗
  • 幾個命令,像rsync的,特別是對待文件名參數結束帶/不同
相關問題