一、Linux下的cp/rm/mv强制覆盖
(一)、反斜杠(\)临时取消别名
[root@fz ~]# \cp filename new/filename
[root@fz ~]#
(二)、unalias 取消别名
注意:这只是临时取消cp的别名,不是永久的
[root@localhost ~]# unalias cp
[root@localhost ~]# cp filename new/filename
[root@localhost ~]#
(三)、修改默认配置文件
输入alias命令,看到系统内部使用的是cp、mv、rm -i 所以怎么输入都是提示覆盖。
[root@fz ~]#
[root@fz ~]# alias
alias cdd='cd /home/data/android/'
alias cp='cp -i'
alias l='ls -la'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias tf='tail -f '
alias vc='vim ~/.bash_profile'
alias vs='source ~/.bash_profile'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
修改 ~/.bashrc ,在 “alias cp='cp -i' ”前添加`#`号注释后即可。
[root@fz test]# vi ~/.bashrc
# .bashrc # User specific aliases and functions alias rm='rm -i'
#alias cp='cp -i'
alias mv='mv -i' # Source global definitions
if [ -f /etc/bashrc ]; then
. /etc/bashrc
fi
重启或者执行 source ~/.bashrc 让命令生效
(四)、yes指令+管道 自动输入yes
[root@fz ~]# yes | cp filename new/filename
cp: overwrite `new/filename'? [root@localhost ~]#
二、Java后台调用Linux命令实现
public void copyIcon() throws IOException, InterruptedException {
Runtime r = Runtime.getRuntime();
String cmd_copy = "\\cp -rf temp/AppIcon/* icon/"; //copy并覆盖
String[] cmds = new String[]{"sh","-c",cmd_copy};
Process p = r.exec(cmds);
int result = p.waitFor();
if (result == 0){ //表示正常结束
logger.error("【copy appIcon 成功】");
}else {
logger.error("【copy appIcon 失败】"+cmd_copy);
}
}
if ( U.read(me.Blog) ) $("#推荐").click();
if ( U.copy(me.Blog) ) $("#u Blog").console("原文链接:http://www.cnblogs.com/Grand-Jon/p/7391215.html");
else me.Fuck(U);