cp
複制檔案,可以将一個檔案複制到另外一個地方,也可以将多個檔案複制到目錄。
此指令的适用範圍:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。
1、文法
cp [option] [-T] src dst
cp [option] src dir
cp [option] -t dir src
2、選項清單
--help
顯示幫助文檔
--version
顯示指令版本
-a | --archive
等價于“-dR --preserve=all”
--backup[=CONTROL]
為每一個存在的目标檔案建立備份
-b
類似“--backup”,但是沒有參數
--copy-contents
遞歸時複制特殊檔案的内容
-d
等價于“--no-dereference --preserve=links”
-f | --force
強制執行
-i | --interactive
互動模式,覆寫檔案之前詢問
-H
遵循src中的指令行符号連結。
-l | --link
建立連結,不複制
-L | --dereference
始終遵循src中的符号連結
-n | --no-clobber
不覆寫已經存在的檔案
-R | -r
遞歸模式,複制子目錄
-s | --symbolic-link
建立符号連結,不複制
-P | --no-dereference
不遵循src中的符号連結
-p
等價于“--preserve=mode”
--preserve[=ATTR_LIST]
保留指定的屬性(預設:模式、所有權、時間戳),如果可能的話,其他屬性:上下文、連結、xattr、all
-c
等價于“--preserve=context”
--no-preserve=ATTR_LIST
不保留指定的屬性
--parents
使用目錄下的完整源檔案名
-R | -r | --recursive
遞歸複制子目錄
--reflink[=WHEN]
控制拷貝
--remove-destination
在嘗試打開每個現有目标檔案之前移動它(與“--force”相反)
--sparse=WHEN
控制稀疏檔案的建立
--strip-trailing-slashes
從每個源參數中移除任何尾随斜線。
-S | --suffix=SUFFIX
重寫通常的備份字尾
-t | --target-directory=DIRECTORY
将所有源參數複制到DIRECTORY中。
-T | --no-target-directory
将目标檔案當做普通檔案
-t | --target-directory=dir
複制所有的源檔案到目錄
-u | --update
以更新的方式複制
-v | --verbose
顯示詳細執行過程
-x | --one-file-system
保持在這個檔案系統上
-Z | --context=CONTEXT
将副本的安全上下文設定為上下文
3、說明
當“--reflink[=always]”被指定時,執行一個輕量級副本,其中資料塊僅在修改時被複制。如果這是不可能的,複制失敗,或者如果“--reflink=auto “被指定,則傳回到标準副本。
備份字尾為‘~’,除非設定“--suffix “或”SIMPLE_BACKUP_SUFFIX“。版本控制方法可以通過”--backup“選項或通過VERSION_CONTROL環境變量來選擇。以下是這些值:
1)none, off,從不備份,即使指定了“--backup“。
2)numbered, t,數字版本控制。
3)existing, nil,如果有數字備份,那麼就使用數字備份,否則使用簡單備份。
4)simple, never,簡單備份。
作為特例,當提供強制和備份選項時,cp對源進行備份,src和dst名字相同,都是正常檔案。
4、執行個體
1)複制整個目錄
[root@192 weijie]# cp -r test01/ test03/ //使用-r選項,遞歸方式複制
[root@192 weijie]# ls test03
1.c 1.c~ 2.c 3.c
2)使用“-t”選項,将多個檔案複制到目錄
[root@192 weijie]# cp -t test01 1.c 2.c 3.c //複制3個檔案到test01目錄
cp:是否覆寫"test01/1.c"? y
[root@192 weijie]# ls test01
3)建立連結
[root@localhost wj]# cp -s 3.c 4.c //建立符号連結,并不是複制
[root@localhost wj]# ls -l 4.c //檢視内容,該檔案是一個符号連結
lrwxrwxrwx 1 root root 3 10月 30 08:09 4.c -> 3.c
[root@localhost wj]#
做了一個Linux學習的平台,目前出來一個雛形,各位可以參考使用
連結:https://pan.baidu.com/s/1GOLVU2CbpBNGtunztVpaCQ 密碼:n7bk
