linux下面覆盖文件,如何实现直接覆盖,不提示
Linuxcp命令
Linux命令大全Linux命令大全
Linuxcp命令主要用于复制文件或目录。
语法
cp[options]sourcedest
或
cp[options]source...directory
参数说明:
-a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
-d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
-f:覆盖已经存在的目标文件而不给出提示。
-i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答"y"时目标文件将被覆盖。
-p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
-l:不复制文件,只是生成链接文件。
----------------------------------------------------------------------
[root@linux~]#cp-rffiles/*newfiles
cp:是否覆盖“newfiles/1.txt”?
加了-f了,依然有此提示。
服务器上查找后发现在默认的系统中是加了别名如下
[root@linux~]#alias
aliascp='cp-i'
可以看到别人,也就是当执行cp的时候,其实执行的是cp-i参数
解决办法:
方法一:修改bashrc文件禁用掉cp的alias
[root@linux~]#vi~/.bashrc
在aliascp='cp-i'前加上"#"注释,重新登录即可实现复制不提示。
建议使用完毕还是还原设定,防止误操作覆盖重要文件。