Linux下如何使cp命令不提示覆盖文件

在Linux下,如果希望将文件file拷贝到目录dir下,可以执行:cp file dir 但如果dir下已经存在一个名为file的文件的时候,系统总是会提示是否覆盖file。 这是一个很好的功能,它能够防止我们由于疏忽对系统造成的损害,但如果不希望看到这些交互的提示信息呢?比如我们需要写一个脚本,将某些文件安装到指定的目录下,这时我们肯定不希望看到提示。

可以试一下 -f 选项,-f 一般表示强制执行(force)。
cp -f file dir

但好像结果并不像我们希望的那样,系统依然会有覆盖提示。为什么呢?原因很简单,系统将cp命令alias为cp -i。
当我们执行cp命令的时候,系统往往执行的是cp -i,-i 选项表示有交互的提示信息,
所以执行cp -f的时候,系统实际执行的是cp -i -f,所以仍然会有覆盖提示。

可以执行alias命令查看下:
alias cp='cp -i'
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 which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

想要执行原始的cp也很简单:
1.在调用cp的时候加入绝对路径(可通过whereis cp命令得到),如/bin/cp -f file dir
2.通过直接执行下面的语句调用系统原始的命令:cp -f file dir
3.在~/.bashrc里面注释掉 Alias cp='cp -i'
4.unalias cp ,然后再使用cp,但使用后还原alias cp='cp -i'

(0)

相关推荐

  • Linux下如何使用cp命令复制文件及复制目录

    Linux下cp命令的用法主要用于复制文件,加上参数还可以复制目录,下面随小编一起来了解下Linux下cp命令的具体用法。 一般情况下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经 ...

  • linux下测试网络连通性命令是什么?

    linux下测试网络连通性命令是PING,其主要功能就是为了检测主机!

  • Linux下压缩和解压缩命令

    Linux下压缩和解压缩命令 操作方法 01 .tar 解包:tar -xvf FileName.tar 打包:tar -cvf FileName.tar DirName (注:tar是打包,不是压缩 ...

  • windows7下如何用CMD命令复制和删除文件夹?

    有时候有些顽固的文件或者文件夹我们总是让你删除不掉,不要着急其实Win7系统自带的CMD命令就可以很好的解决这个问题,下面小编就为你介绍一下windows7下如何用CMD命令复制和删除文件夹. 如果我 ...

  • Linux中使用cp命令进行强制覆盖的方法

    cp在拷贝时,如果遇到相同的文件名的文件,就会不断询问是否覆盖,让你输入yes or no .为什么呢?这是为了linux为了安全考虑,在cp命令上用了别名.也就是你输入只是输入cp命令时,其实系统是 ...

  • 查看Linux下系统资源占用常用命令(top.free.uptime)

    一,top命令 1.作用 top命令用来显示执行中的程序进程,使用权限是所有用户。 2.格式 top [-] [d delay] [q] [c] [S] [s] [i] [n] 3.主要参数 d:指定 ...

  • Linux下shell中case命令详解

    linux下shell中的case名字和C/C++中的switch类似,但是shell中的case更强大和复杂。 1、强大主要体现在:shell中case中的关键字可以是字符串类型,而每一项中可以包含 ...

  • 查看Linux下系统资源占用常用命令

    一,top命令 1.作用 top命令用来显示执行中的程序进程,使用权限是所有用户. 2.格式 top [-] [d delay] [q] [c] [S] [s] [i] [n] 3.主要参数 d:指定 ...

  • Linux下执行程序出现 Text file busy 提示时的解决方法

    使用 fuser xxx 命令查看制定的文件被哪个进程占用,然后关闭该进程,则解决问题。 备注: 如果 xxx 命令是在普通用root 下开启, 而在普通用户下使用:fuser xxx 是没有结果的 ...