linux中“cp-a”和“cp-r”的區(qū)別是:“cp-a”命令復制的數(shù)據(jù)會保留元數(shù)據(jù)的時間戳和文件屬性等信息,而“cp-r”命令復制的數(shù)據(jù)會使用新的時間戳等信息。
本教程操作環(huán)境:linux7.3系統(tǒng)、Dell G3電腦。
linux中cp-a和cp-r的區(qū)別是什么
Linux cp(英文全拼:copy file)命令主要用于復制文件或目錄。
語法
cp [options] source dest
或
cp [options] source... directory
參數(shù)說明:
-
-a:此選項通常在復制目錄時使用,它保留鏈接、文件屬性,并復制目錄下的所有內(nèi)容。其作用等于dpR參數(shù)組合。
-
-r:若給出的源文件是一個目錄文件,此時將復制該目錄下所有的子目錄和文件。
cp -a
: 遞歸復制,復制的數(shù)據(jù)會保留原有數(shù)據(jù)的時間戳等信息(具體:時間戳+所有權+復制連結文件屬性而非檔案本身)
cp -r
: 遞歸復制,復制的數(shù)據(jù)會使用新的時間戳等信息
復制連結文件屬性而非檔案本身:例如是軟鏈接的話,復制的是軟鏈接的屬性(時間戳等信息),而不是實際文檔的
比如:
cp -a test.sh test1.sh
使用ls -l
查看:兩者時間戳一致
cp -r test.sh test2.sh
使用ls -l
查看:兩者時間戳不同
復制鏈接文件也是一樣:
簡單總結下:
使用cp -a
相當于將原數(shù)據(jù)原封不動的拷貝過來,不改變里面的任何信息
使用cp -r
拷貝數(shù)據(jù),拷貝的結果是生成新的時間戳等信息