Linux命令:cp (copy)復制文件或目錄


復制文件,只有源文件較目的文件的修改時間新時,才復制文件
     cp -u -v file1 file2

    .將文件file1復制成文件file2
     cp file1 file2

    .采用交互方式將文件file1復制成文件file2
     cp -i file1 file2

    .將文件file1復制成file2,因為目的文件已經存在,所以指定使用強制復制的模式
     cp -f file1 file2

    .將目錄dir1復制成目錄dir2
     cp -R file1 file2

    .同時將文件file1、file2、file3與目錄dir1復制到dir2
   cp -R file1 file2 file3 dir1 dir2

    .復制時保留文件屬性
     cp -p a.txt tmp/

    .復制時保留文件的目錄結構
     cp -P  /var/tmp/a.txt  ./temp/

    .復制時產生備份文件
     cp -b a.txt tmp/

    .復制時產生備份文件,尾標 ~1~格式
     cp -b -V t   a.txt /tmp   
 
    .指定備份文件尾標   
     cp -b -S _bak a.txt /tmp

 

cp -r /home/root.adminssh/sharepls/ /home/jboss/server/default/deploy/pls.war

如果,文件夾 /home/jboss/server/default/deploy/pls.war不存在,則就會把sharepls重名名pls.war並拷貝過去。

否則,如果 /home/jboss/server/default/deploy/pls.war存在,則會拷貝 /home/jboss/server/default/deploy/pls.war/sharepls到下。

 

----------------------

那怎么實現覆蓋的,下面這個方法就可以:

先執行:

unalias cp

然后在執行

cp -r/home/root.adminssh/sharepls/* /home/jboss/server/default/deploy/pls.war

 

如果你不執行unalias cp,他不會不斷的提醒你,是否覆蓋,原則上雖然安全,但實際上不勝其煩。

為啥要執行unalias cp呢,呵呵,執行以下alias就可以看到了(在執行unalias cp之前啊),因為他把cp 命令 修改為 cp -i 了(i-提醒)。如下:

 

alias cp='cp -i'

alias l.='ls -d .* --color=tty'

alias ll='ls -l --color=tty'

alias ls='ls --color=tty'

alias mv='mv -i'

alias rm='rm -i'

alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

-------------------------------------------------------
 
另外,  修改/root/.bashrc下面的文件就能讓它永久失效^_^


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM