centos 使用 CP 命令 不提示 覆盖

今天 在我的VPS上拷一个目录,但放的地方有一个同名目录并且里面还有文件。如是直接拷过去,结果有N个要确认替换的提示,直接CTRL+C,在网上搜了把,发现有几个方法能够解决,方法例如以下:

一般我们使用的命令是cp -rf sourcefile targetdir或cp -r -f sourcefile targetdir,

-r的意思是递归复制,也就是复制目录及其下全部文件

-f的意思是遇到同名的文件,不提示,直接覆盖

但为什么我们用这两个參数,系统还是会提示覆盖呢?

这是由于。系统在安装的时候使用了别名,防止我们误操作,覆盖了不该覆盖的文件。使用别名命令就能够看到详细的配置了。

[[email protected] home]#
alias

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‘

从上边我们能够看出,我们输入的cp命令,事实上是“cp -i”命令,

也就是无论我们怎么输入 cp -rf,事实上运行的是 cp -i -rf , 也无怪乎总是提问是否覆盖了。

从上边的命令我们能够知道,其它几个命令,也使用了别名。比如ll,ls mv,rm等。

那么怎样解决问题呢?

[[email protected] home]#
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

仅仅要在对应的命令前加#号,就能够凝视掉该命令了。

保存退出,然后你就能够用纯粹的原命令了。

事实上另一种更简单的方法能够解决问题,就是在cp前加一个反斜杠如: \cp -f file dir 就能够了!

时间: 2024-08-02 22:43:24

centos 使用 CP 命令 不提示 覆盖的相关文章

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

在Linux下,如果希望将文件file拷贝到目录dir下,可以执行:cp file dir但如果dir下已经存在一个名为file的文件的时候,系统总是会提示是否覆盖file. 这是一个很好的功能,它能够防止我们由于疏忽对系统造成的损害,但如果不希望看到这些交互的提示信息呢?比如我们需要写一个脚本,将某些文件安装到指定的目录下,这时我们肯定不希望看到提示. 可以试一下 -f 选项,-f 一般表示强制执行(force). cp -f file dir 但好像结果并不像我们希望的那样,系统依然会有覆盖

Linux下如何使CP命令不提示覆盖

在Linux下使用CP命令,经常会提示是否覆盖,如果是太批量的文件覆盖,老是这么提示,会很烦的.那如何解决这个问题呢? 我们先来看一下原因吧! 一般我们使用的命令是cp -rf sourcefile targetdir或cp -r -f sourcefile targetdir, -r的意思是递归复制,也就是复制文件夹及其下所有文件 -f的意思是遇到同名的文件,不提示,直接覆盖 但为什么我们用这两个参数,系统还是会提示覆盖呢? 这是因为,系统在安装的时候使用了别名,防止我们误操作,覆盖了不该覆盖

Linux下cp -rf总是提示覆盖的解决办法

通常情况下使用cp -rf进行文件或者文件夹的管理时一般就不再提醒是否覆盖.然而在内网的一台机器上使用cp -rf却提示是否覆盖.难道和常用的命令不同? [[email protected] test]# cp -rf ./files/ ./bak/ cp:是否覆盖"./bak/files/test.txt"? cp:是否覆盖"./bak/files/hh.txt"? cp:是否覆盖".www.1.qixoo.com/bak/files/child/chi

cp实现无提示覆盖拷贝

在我们使用cp批量拷贝时,即使使用cp -rf ,遇到需要覆盖时,也是需要确认是否覆盖的. 解决办法1: 我们使用alias看一下别名设置会发现这样一行 alias cp='cp -i' 意思就是使用cp时,默认加上-i选项,-i选项的意思是:-i, --interactive 覆盖前询问(使前面的 -n 选项失效) 这样我们就找到问题原因了.只要取消这个别名设置就可以了. unalias cp 解决办法2: 使用\cp 这样就会忽略别名设置 解决办法3: 使用管道自动输入yes yes | c

Linux使用cp命令直接覆盖不提示的方法

普通的cp命令使用 例如:cp abc.txt /home 如果/home里面之前有abc.txt文件,会提示你是否要覆盖?这个时候你需要输入Y,假如文件很多的话,每复制一个文件都要输入一次Y. 下面介绍cp文件时直接覆盖不提示的方法 命令如下: \cp abc.txt /home 直接复制abc.txt 到/home 里面,不管/home 里面之前是否有这个文件都会直接覆盖,不再出现覆盖提示!

cp命令覆盖文件时不用按Y来确认的方法

我们在Linux下使用cp命令复制文件时候,有时候会需要覆盖一些同名文件,覆盖文件的时候都会有提示:需要不停的按Y来确定执行覆盖.文件数量不多还好,但是要是几百个估计按Y都要吐血了,于是折腾来半天总结了一个方法: # cp aaa/* /bbb[复制目录aaa下所有到/bbb目录下,这时如果/bbb目录下有和aaa同名的文件,需要按Y来确认并且会略过aaa目录下的子目录.] # cp -r aaa/* /bbb[这次依然需要按Y来确认操作,但是没有忽略子目录.] # cp -r -a aaa/*

cp命令覆盖数据

生产环境: 操作系统:CentOS 6.6 数据库系统: Mysq 5.5.41 任务:恢复数据库文件时,要求不能一一提示: 问题:恢复时一个一个数据文件提示,效率不高. 解决方式: 1.提示?是否要覆盖? [[email protected]ql]# cp -r -f back20150625ultrax/ ultrax cp:是否覆盖"ultrax/back20150625ultrax/pre_home_comment.MYI"? --.2.一些服务器会默认增加别名 alias c

每天一个Linux命令(08)--cp命令

cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一.一般情况下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不管你是否使用-i参数.但是如果是在shell脚本中执行cp时,没有-i参数时不会询问是否覆盖.这说明命令行和shell脚本的执行方式有些不同. 1.命令格式: 用法: cp [选项] [-T] 源 目的 或:cp  [选项] 源 目录 或:cp  [选项] -t 目录 源 2.命令功能: 将源文件复制至目标文件,或将多个源文件复制

cp命令总结

1.cp:顾名思义copy,用于拷贝文件或者文件夹到指定位置,也可以拷贝并重命名. 格式:cp source destination cp 源文件 目标文件 2.具体使用: cp -a 所有属性,包含drp的所有属性(文件的权限,属主,属组,时间戳,链接文件等).归档文件,保留属性.通常-a用于备份拷贝. [[email protected] tmp]# cp -a 1 2 [[email protected] tmp]# ll total 20 -rw-r--r--  1 root root