[精讚] [會員登入]
867

FREEBSD、LINUX和MAC拷背目錄的差別

原本以為cp複製一個目錄,但在FREEBSD、LINUX和MAC竟有不同的表現情況

分享此文連結 //n.sfs.tw/13039

分享連結 FREEBSD、LINUX和MAC拷背目錄的差別@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-22 09:29:40 最後編修
2019-01-16 02:16:06 By 張○○
 

自動目錄

FREEBSD和linux拷背目錄的差別

原本以為沒什麼不同的東西,竟然有這種差別

 

in FREEBSD

今天要把目錄 dir/ 拷背到相對位置 path/to/,

我希望變成這樣子:

  path/to/dir/

很自然的下了這個指令

# cp -r dir/ path/to/

結果發現系統把dir下的所有檔案 dir/* 全丟到 path/to/而不是我想像中的複製一整個目錄到 ../path/to/

換句話說,我的目錄名稱 dir 整個不見了,打個比方:

就像把箱子裡面的東西倒到新的箱子,然後原來的箱子就丟了。

但是我原本的想法是把原有的箱子和裡面的東西放到新的箱子裡。

這和我之前的認知有衝突,所以想了一下,拿掉dir後面的 '/' 就OK了

# cp -r dir path/to/

我之前認知是有沒有那個'/'的結果會一樣,所以從來沒發現Freebsd會有這個差異

 

inLINUX

於是到 linux 下試一下,兩者的結果是一樣的(都是把dir的箱子放到path/to的箱子裡)

$ cp -r dir path/to/


$ cp -r dir/ path/to/

至於只要拷背檔案的話

$ cp dir/* path/to/

inMAC

我發現在MAC裡面竟然和FREEBSD一樣

$ cp -r dir path/to/  (把dir的箱子放到path/to的箱子裡)


$ cp -r dir/ path/to/ (把dir箱裡的東西倒到path/to的箱子裡)

 

結論

1 來源目錄最後有加'/',在FREEBSD和IOS中是把裡面的東西倒出來

2. 來源目錄最後有無加'/',在LINUX裡沒有差異

3. mv指令不必加 -r ,和cp不同,全部都沒有差異。換句話說,來源目錄最後有沒有加上'/'都沒影響是搬移整個目錄。

奇思妙想:根據生物演化的化石痕跡(例如鯨魚的後肢是和脊椎不相連的兩塊骨片),IOS和FREEBSD的血源也許比較近呢~~


編修原文 2009-11-01 02:02:50

END

你可能感興趣的文章

[vi/vim] 修改顯示顏色的檔案類型,編修自動上色的檔案類型 vi/vim 編修自動上色的檔案類型,說明新增上色檔案附檔名的方法

[find] 活用 find 指令參數-exec 執行找到的結果 在linux/ freebsd 中查找檔案最強的就是 find,他有一個參數相當好用:-exec

利用tr如何移除檔案中的 ^M 利用tr如何移除檔案中的換行 ^M

Vim .vimrc 設定,讓vim更好用 vim 是 unix-like 系統中最常用的編輯器,經由妥善的設定讓vim更好用

[Linux] 進行字串取代,三種字串取代的方法 使用vi、sed、perl來取代字串

時間和時區CST UTC GMT的說明及設定 時間和時區CST DST UTC GMT的說明設定,及php時間的設置

隨機好文

SELinux 常用指令和檔案 在Redhat系列中,Centos5以後加入了selinux,他並沒有這麼可怕,不必每次看到Selinux ,就想把他

Linux shell 的date表示法 linux下SHELL中的date表示法

UTF-8的網頁但IE8一片空白 UTF8編碼的網頁在Firefox 正常顯示、但IE8 就是空白,IE8編碼設定是「自動偵測」可是自動偵測到的是 big5...

世紀帝國征服者新版本--被遺忘的帝國 世紀帝國征服者新版本--被遺忘的帝國 世紀二代的征服者是精典遊戲中的精典,aofe更好玩...

[MAC] 安裝APACHE+PHP OS Darwin OpenIDMac1deAir 15.6.0 Darwin Kernel Version 15.6.