cp命令文件夾
1. 如何用cp命令將data文件夾下的plain.txt文件復制到script
cp命令中使用-R標志。
如果源文件夾包含多個子文件夾,則需要在cp命令中使用-R標志。該-R代表遞歸的,這意味著在執行的命令的有效期為子目錄為好。
要將plain.txt文件遞歸復制到script目錄,請執行以下操作,cp-Rplain.txtscript復制多個目錄,您也可以使用cp命令將多個目錄復制到單個位置。您需要做的就是在默認cp命令中傳遞用空格字元分隔的文件夾名稱。
2. 如何用cp 命令將一個文件夾的內容復制到另一個文件夾
cp命令
cp命令用來將一個或多個源文件或者目錄復制到指定的目的文件或目錄。它可以將單個源文件復製成一個指定文件名的具體的文件或一個已經存在的目錄下。cp命令還支持同時復制多個文件,當一次復制多個文件時,目標文件參數必須是一個已經存在的目錄,否則將出現錯誤。
語法
cp(選項)(參數)
選項
-a:此參數的效果和同時指定"-dpR"參數相同; -d:當復制符號連接時,把目標文件或目錄也建立為符號連接,並指向與源文件或目錄連接的原始文件或目錄; -f:強行復制文件或目錄,不論目標文件或目錄是否已存在; -i:覆蓋既有文件之前先詢問用戶; -l:對源文件建立硬連接,而非復制文件; -p:保留源文件或目錄的屬性; -R/r:遞歸處理,將指定目錄下的所有文件與子目錄一並處理; -s:對源文件建立符號連接,而非復制文件; -u:使用這項參數後只會在源文件的更改時間較目標文件更新時或是名稱相互對應的目標文件並不存在時,才復制文件; -S:在備份文件時,用指定的後綴「SUFFIX」代替文件的默認後綴; -b:覆蓋已存在的文件目標前將目標文件備份; -v:詳細顯示命令執行的操作。
3. linux cp命令對於拷貝文件和文件夾有何區別
cp文件時候可以不用加參數,但是cp文件夾的時候必須加-R或-r。解決方法如下:
1、首先將文件復制到另一個目錄中:cp 文件名 目錄名。復制a.txt至test目錄中,則執行 cp a.txt /test 即可。
4. linux學習中,關於文件復制的cp命令,其中有一個 -i 的命令有點問題
cat~/.bashrc
你會發現cp默認就等於了cp -i
aliascp='cp-i'
所以導致你無論cp還是cp -i都是一樣的效果
我每次用linux之前都會把這句alias cp='cp -i'注釋掉
附上我常用的alias文件吧,以後直接替換就可以了,操作步驟:
1.先進入編輯模式
vim~/.bashrc
2.跳轉到文字的結尾:一直按pagedown按鍵,到最後一行,再按end到文字結尾
3.按a,或者o,進入編輯模式
3.ctrl+u是一行一行刪除,把所有內容都刪除掉
4.復制粘貼以下代碼
#.bashrc
#
aliasrm='rm-i'
#aliascp='cp-i'
aliasmv='mv-i'
aliasll="ls-l"
#修改alias文件
aliasaliasvim="vim/root/.bashrc"
#重載alias文件使其生效,每次修改後都要刷新
aliasaliasource="source/root/.bashrc"
#修改環境變數,比如添加jre,tomcat,redis
aliasprofilevim="vim/etc/profile"
#重載環境變數,使其生效
aliasprofilesource="source/etc/profile"
#重啟網卡
aliasnetworkrestart="servicenetworkrestart"
#列出此伺服器的網卡配置文件
aliasnetworkvim="cd/etc/sysconfig/network-scripts/&&ls|grepifcfg-"
#修改DNS解析
aliasnameservervim="vim/etc/resolv.conf"
#修改hosts
aliashostsvim="vim/etc/hosts"
#查看埠當前佔用情況
aliasportcheck="netstat-tunlp|grep"
#查看firewall防火牆開放埠列表(白名單)
aliasfirewallports="firewall-cmd--zone=public--list-ports"
#設置firewall防火牆的mysql3306埠互通
aliasfirewalladd="echo'firewall-cmd--zone=public--add-port=3306/tcp--permanent'"
#firewall防火牆重啟
aliasfirewallreload="firewall-cmd--reload"
#iptables防火牆添加指定埠命令
aliasiptablesadd="echo'/sbin/iptables-IINPUT-ptcp--dport8080-jACCEPT'"
#查看防火牆白名單(應該是重啟還在的)
aliasiptableports="more/etc/sysconfig/iptables"
#查看指定進程
#aliaspid="psaux|grep"
aliaspid="ps-ef|grep"
#查找根目錄/下的名字為xx的文件,支持通配符*
aliassearch="find/-name"
#查看Linux系統版本和位數
aliassysteminfo='cat/etc/redhat-release;getconfLONG_BIT;uname-a'
#顯示當前伺服器時間
aliastimenow='date+"%Y-%m-%d%H:%M:%S"'
#更新伺服器時間
#aliasupdatetime='ntpdate0.centos.pool.ntp.org'
#跳轉tomcat路徑
aliastomcatpwd="cd/disk1/app/tomcat8"
#啟動tomcat
aliastomcatstart="tomcatpwd&&./bin/startup.sh&&tail-f./logs/catalina.out"
#停止tomcat
aliastomcatstop="tomcatpwd&&./bin/shutdown.sh&&ps-ef|greptomcat"
#查看tomcat日誌
aliastomcatlog="tomcatpwd&&tail-200f./logs/catalina.out"
#批量啟動多個tomcat
aliastomcatstartall="/usr/local/tomcat8080/bin/startup.sh&&/usr/local/tomcat8081/bin/startup.sh&&/usr/local/tomcat8082/bin/startup.sh&&/usr/local/tomcat8083/bin/startup.sh&&/usr/local/tomcat8084/bin/startup.sh"
#批量關閉多個tomcat
aliastomcatstopall="/usr/local/tomcat8080/bin/shutdown.sh&&/usr/local/tomcat8081/bin/shutdown.sh&&/usr/local/tomcat8082/bin/shutdown.sh&&/usr/local/tomcat8083/bin/shutdown.sh&&/usr/local/tomcat8084/bin/shutdown.sh"
#redis查找指定key對應value值
aliasrediskeys='redis-cli-a"abc@123"keys'
#修改nginx默認配置
aliasnginxconf="vim/usr/local/nginx/conf/nginx.conf"
#以默認配置啟動nginx
aliasnginxstart="/usr/local/nginx/sbin/nginx-c/usr/local/nginx/conf/nginx.conf"
#強制停止nginx伺服器,如果有未處理的數據,丟棄
aliasnginxstop="/usr/local/nginx/sbin/nginx-sstop"
#推薦:優雅的停止nginx伺服器,如果有未處理的數據,等待處理完成之後停止
aliasnginxquit="/usr/local/nginx/sbin/nginx-squit"
#重載nginx,用於修改配置後,直接刷新使配置生效
aliasnginxreload="/usr/local/nginx/sbin/nginx-sreload"
#檢查nginx的配置是否可用
aliasnginxcheck="/usr/local/nginx/sbin/nginx-t"
#虛擬機共享文件夾路徑
#aliasshare="/mnt/hgfs/ShareFolder/"
#Sourceglobaldefinitions
if[-f/etc/bashrc];then
./etc/bashrc
fi
5.粘貼後,按ESC退出編輯模式,然後按冒號+w+q+回車 保存
我那些alias裡面不懂的去網路吧,基本用過linux的差不多都接觸過或者一看就懂
5. 使用cp命令復制一個文件到指定目錄對系統性能有影響嘛
使用cp命令復制一個文件到指定目錄對系統性能有影響
一般情況下,shell會設置一個別名,在命令行下復制文件時,如果目標文件已經存在,就會詢問是否覆蓋,不管你是否使用-i參數。
但是如果是在shell腳本中執行cp時,沒有-i參數時不會詢問是否覆蓋。這說明命令行和shell腳本的執行方式有些不同。
6. 如何使用cp命令僅復制所有文件而略過文件夾
for file in/home/alex/Pictures/DCIM/2*/*.jpg do #截取圖片的文件名 如: "xxoo.jpg" i=$(echo ${file}|awk -F'/' '{print $NF}') #判斷目標目錄中是否存在相同的文件 if ls /home/alex/extpic | grep -q -w ${i} ; then #若存在,mv 將存在的文件改名,改名後將源目錄中的文件復制過去 mv /home/alex/extpic/${i} /home/alex/extpic/bak_${i} cp ${file} /home/alex/extpic fi #不存在相同的文件 就直接 cp ${file} /home/alex/extpic done #===================================================================== #至於第二個cp,要不要放在if內(如下);放或者不放,------都行,看個人習慣 if '存在' ;then mv ... ... #存在則改名 cp ... ... #改名後復制文件 else cp ... ... #不存在 則 直接復制 f
7. linux cp命令 查看文件夾內的文件
sudo rm -rf /usr/bin
8. 命令cp -a 和 cp -p 有什麼區別
1、使用范圍不同:在Makefile里會用install,其他地方會用cp命令。如果目標文件存在,cp會先清空文件後往裡寫入新文件,而install則會先刪除掉原先的文件然後寫入新文件。
2、許可權不同:install命令會恰當地處理文件許可權的問題。比如說,install-c會把目標文件的許可權設置為rwxr-xr-x;
3、信息不同:install命令可以列印出更多更合適的debug信息,還會自動處理SElinux上下文的問題。
cp命令還有以下幾種用法:
cp -p可以保留許可權、屬主、時間戳。
cp -d作用為默認鏈接文件是復制鏈接指向的源文件,-d 復制鏈接文件本身。
cp -L作用為保存鏈接所指向的文件,默認cp 就是,不需要-L。
cp -a作用為歸檔復制,常用於備份,相當於cp -dr --preserve=all。
cp -v作用為復制過程可見。
cp -s 作用為創建新的符號鏈接文件,指向原符號鏈接文件,能保證鏈接文件可以使用
cp -u作用為只復制更新的文件
9. linux cp命令,如何復制多個目錄下文件到 對應多個目錄下面
1、打開SecureCRT,選擇要登錄的系統IP地址, 點擊連接。
10. linux cp命令一個目錄復制到另一個目錄
linux復制指定目錄下的全部文件到另一個目錄中
復制指定目錄下的全部文件到另一個目錄中
文件及目錄的復制是經常要用到的。linux下進行復制的命令為cp。
假設復制源目錄 為 dir1 ,目標目錄為dir2。怎樣才能將dir1下所有文件復制到dir2下了
如果dir2目錄不存在,則可以直接使用。《Linux就該這么學》
cp -r dir1 dir2
例:cp -r /data01/sinopec/pos/. /data01/sinopec/pos-pc/
即可。
如果dir2目錄已存在,則需要使用
cp -r dir1/. dir2
如果這時使用cp -r dir1 dir2,則也會將dir1目錄復制到dir2中,明顯不符合要求。
ps:dir1、dir2改成對應的目錄路徑即可。
cp -r /home/www/xxx/statics/. /home/www/statics