当前位置:首页 » 操作系统 » linux文件cp

linux文件cp

发布时间: 2022-06-23 07:42:54

A. linux的cp怎么覆盖

我们平常在Linux中使用 cp 命令时,会发现将一个目录中文件复制到另一个目录具有相同文件名称时,即使添加了 -rf 参数强制覆盖复制时,系统仍然会提示让你一个个的手工输入 y 确认复制,所添加的rf参数是不起作用的。

原因:
cp命令被系统设置了别名,相当于cp=‘cp -i’。

查询alias命令

[root@localhost sonarqube]# alias
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
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'
1
2
3
4
5
6
7
8
9
10
11
1
2
3
4
5
6
7
8
9
10
11
通过上述输出,可以看出,我们平时使用 cp 命令,虽然没有添加任何参数 ,但系统默认会在我们使用 cp 命令时自动添加 -i 参数

-i, --interactive
prompt before overwrite
1
2
1
2
-i 即交互的缩写方式,也就是在使用 cp 命令作文件覆盖操作之前,系统会要求确认提示.这个本来是系统的一个保险措施.如果有很多文件要复制,觉得一个一个输入y 确认麻烦的话,可以使用如下方法解决:

强制复制
建议大家使用方式一,因为取消别名的话很容易造成风险,万一又忘记恢复别名,以后的复制都不会有提示信息。
有提示信息可以多一层保险嘛,是人都会有犯混的时候,给自己加一个保险,有保障呀.

方式一
使用原生的cp命令

/bin/cp -rf xxxx
1
1
方式二
取消cp命令别名

unalias cp
1
1
去掉 cp 命令的别名,这时你再用 cp -rf 复制文件时,就不会要求确认啦.

复制

B. Linux cp命令怎么使用

该命令的功能是将给出的文件或目录拷贝到另一文件或目录中,同MSDOS下的命令一样,功能十分强大。

语法: cp [选项] 源文件或目录 目标文件或目录

说明:该命令把指定的源文件复制到目标文件或把多个源文件复制到目标目录中。

该命令的各选项含义如下:

- a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。

- d 拷贝时保留链接。

- f 删除已经存在的目标文件而不提示。

- i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。

- p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。

- r 若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。

- l 不作拷贝,只是链接文件。

需要说明的是,为防止用户在不经意的情况下用cp命令破坏另一个文件,如用户指定的目标文件名已存在,用cp命令拷贝文件后,这个文件就会被新源文件覆盖,因此,建议用户在使用cp命令拷贝文件时,最好使用i选项。

例子:
Cp -i file1 file2 (将文档 file1 复制成 file2 . –i为提示确认。)

cp file1 dir1 将文档 file1 复制到目录 dir1 下,文件名仍为 file1.

cp /tmp/file1 . 将目录 /tmp 下的文档 file1复制到现行目录下,档名仍为 file1.

cp /tmp/file1 file2 将目录 /tmp 下的文档 file1现行目录下,档名为file2

cp -r dir1 dir2 (recursive ) 复制整个目录.若目录 dir2 不存在,则将目录dir1,及其所有文档和子目录,复制到目录 dir2 下,新目录名称为dir1.若目录dir2不存在,则将dir1,及其所有文档和子目录,复制为目录 dir2.

C. linux cp命令一个目录复制到另一个目录

linux复制指定目录下的全部文件到另一个目录中
复制指定目录下的全部文件到另一个目录中
文件及目录的复制是经常要用到的。linux下进行复制的命令为cp。
假设复制源目录 为 dir1 ,目标目录为dir2。怎样才能将dir1下所有文件复制到dir2下了
如果dir2目录不存在,则可以直接使用。《Linux就该这么学》
cp -r dir1 dir2
例:cp -r /data01/sinopec/pos/. /data01/sinopec/pos-pc/
即可。
如果dir2目录已存在,则需要使用
cp -r dir1/. dir2
如果这时使用cp -r dir1 dir2,则也会将dir1目录复制到dir2中,明显不符合要求。
ps:dir1、dir2改成对应的目录路径即可。
cp -r /home/www/xxx/statics/. /home/www/statics

D. linuxcp命令如何使用

用于复制文件或目录。
常用参数:
-f force:强行复制文件或目录,不管文件或目录是否存在;
-d:复制时保留文件链接;
-i -interactive:覆盖文件之前先询问用户;
-r:递归处理,将指定目录下的文件与子目录一并处理,若源文件或目录的新盖不属于目录或符号链接,则一律视为普通文件处理。

E. LINUX命令的cp -r 和-R的区别是

cp -r 的作用是递归,可复制目录,如果复制目录必须加此选项。

cp -R的作用仅仅是复制目录。

不过cp -r 和-R命令功能上是等价的。不加-r或者-R的时候,只输入命令cp时只拷贝文件,不拷贝文件夹,加上后则会拷贝文件夹——包括下一级的子文件夹,以及子文件夹中的子文件夹,以此类推。

(5)linux文件cp扩展阅读:

cp命令还有以下几种用法:

cp -p可以保留权限、属主、时间戳。

cp -d作用为默认链接文件是复制链接指向的源文件,-d 复制链接文件本身。

cp -L作用为保存链接所指向的文件,默认cp 就是,不需要-L。

cp -a作用为归档复制,常用于备份,相当于cp -dr --preserve=all。

cp -v作用为复制过程可见。

cp -s 作用为创建新的符号链接文件,指向原符号链接文件,能保证链接文件可以使用

cp -u作用为只复制更新的文件

F. Linux里面cp加不加-a的区别是什么

cp命令可以理解为英文单词的缩写,其功能为复制文件或目录。添加参数-a 等价于“dpr”选项 1.-p 保留源文件或目录的所有属性2.-r 递归复制文件和目录-3.d 当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录.简单地说就是保留原文件属性的前提下复制文件 ,查询命令《Linux就该这么学》。

G. linux 下的cp命令

unix文化中是利用多个工具,通过管道来实现的,不能怪cp本身。
你这个需求也许应该用发送email的命令的某个选项,
假设它叫mail命令,并且有个带附件文件的功能选项
-a,
那么mail
-a
file
就是你要的解

H. linux cp命令拷贝结束的标志

linux cp命令拷贝结束的标志是cp复制后的文件名称被改变了。
cp 命令是真正的数据拷贝命令,即拷贝元数据,也会拷贝数据。

I. linux如何复制文件

linux系统使用cp命令即可将一个文件夹里面的文件复制到另外一个文件夹里面。

这个命令相当于dos下面的命令,具体用法是:cp–r源文件目的文件,其中参数r是指连同源文件中的子目录一同拷贝。../ 和 ./ 代表的 是上级目录以及当前目录。使用时的两种情况:

1、处在当前目录复制当前目录下文件到别的目录:cp文件名称别的文件目录路径

例如,在orz文件夹下有两个子文件夹a和b,a中有文件x.c,b中无文件。此时我们在a文件夹中命令如下:cpx.c../b/。

2、处在当前文件夹下复制另外文件夹下的文件到当前文件夹下:cp路径/文件名称./例如和上面例子一样,命令如下:cp../a/x.c./。

(9)linux文件cp扩展阅读:

Linux系统复制错误文件要删除的命令:

命令RM是用来删除文件的,与DOS下的RM(删除一个空目录)是不同的,应该注意。对于rm命令有三个常见的参数:-i、-r和-f。例如,您想删除名为Test:Rm-ITest的文件

系统会问:RM:删除测试?Y,文件将不会被删除,直到你按回车。这样做的原因是Linux没有像DOS恢复删除命令,或者你可以使用pcTool和其他工具来保存删除文件,删除文件在Linux中不能得救,因此有必要使用这个参数删除之前让你再次确认。

J. linux学习中,关于文件复制的cp命令,其中有一个 -i 的命令有点问题

cat~/.bashrc

你会发现cp默认就等于了cp -i

aliascp='cp-i'

所以导致你无论cp还是cp -i都是一样的效果

我每次用linux之前都会把这句alias cp='cp -i'注释掉

附上我常用的alias文件吧,以后直接替换就可以了,操作步骤:

1.先进入编辑模式

vim~/.bashrc

2.跳转到文字的结尾:一直按pagedown按键,到最后一行,再按end到文字结尾

3.按a,或者o,进入编辑模式

3.ctrl+u是一行一行删除,把所有内容都删除掉

4.复制粘贴以下代码

#.bashrc

#

aliasrm='rm-i'
#aliascp='cp-i'
aliasmv='mv-i'
aliasll="ls-l"

#修改alias文件
aliasaliasvim="vim/root/.bashrc"
#重载alias文件使其生效,每次修改后都要刷新
aliasaliasource="source/root/.bashrc"

#修改环境变量,比如添加jre,tomcat,redis
aliasprofilevim="vim/etc/profile"
#重载环境变量,使其生效
aliasprofilesource="source/etc/profile"

#重启网卡
aliasnetworkrestart="servicenetworkrestart"
#列出此服务器的网卡配置文件
aliasnetworkvim="cd/etc/sysconfig/network-scripts/&&ls|grepifcfg-"
#修改DNS解析
aliasnameservervim="vim/etc/resolv.conf"
#修改hosts
aliashostsvim="vim/etc/hosts"

#查看端口当前占用情况
aliasportcheck="netstat-tunlp|grep"
#查看firewall防火墙开放端口列表(白名单)
aliasfirewallports="firewall-cmd--zone=public--list-ports"
#设置firewall防火墙的mysql3306端口互通
aliasfirewalladd="echo'firewall-cmd--zone=public--add-port=3306/tcp--permanent'"
#firewall防火墙重启
aliasfirewallreload="firewall-cmd--reload"
#iptables防火墙添加指定端口命令
aliasiptablesadd="echo'/sbin/iptables-IINPUT-ptcp--dport8080-jACCEPT'"
#查看防火墙白名单(应该是重启还在的)
aliasiptableports="more/etc/sysconfig/iptables"
#查看指定进程
#aliaspid="psaux|grep"
aliaspid="ps-ef|grep"

#查找根目录/下的名字为xx的文件,支持通配符*
aliassearch="find/-name"

#查看Linux系统版本和位数
aliassysteminfo='cat/etc/redhat-release;getconfLONG_BIT;uname-a'
#显示当前服务器时间
aliastimenow='date+"%Y-%m-%d%H:%M:%S"'
#更新服务器时间
#aliasupdatetime='ntpdate0.centos.pool.ntp.org'

#跳转tomcat路径
aliastomcatpwd="cd/disk1/app/tomcat8"
#启动tomcat
aliastomcatstart="tomcatpwd&&./bin/startup.sh&&tail-f./logs/catalina.out"
#停止tomcat
aliastomcatstop="tomcatpwd&&./bin/shutdown.sh&&ps-ef|greptomcat"
#查看tomcat日志
aliastomcatlog="tomcatpwd&&tail-200f./logs/catalina.out"

#批量启动多个tomcat
aliastomcatstartall="/usr/local/tomcat8080/bin/startup.sh&&/usr/local/tomcat8081/bin/startup.sh&&/usr/local/tomcat8082/bin/startup.sh&&/usr/local/tomcat8083/bin/startup.sh&&/usr/local/tomcat8084/bin/startup.sh"
#批量关闭多个tomcat
aliastomcatstopall="/usr/local/tomcat8080/bin/shutdown.sh&&/usr/local/tomcat8081/bin/shutdown.sh&&/usr/local/tomcat8082/bin/shutdown.sh&&/usr/local/tomcat8083/bin/shutdown.sh&&/usr/local/tomcat8084/bin/shutdown.sh"

#redis查找指定key对应value值
aliasrediskeys='redis-cli-a"abc@123"keys'

#修改nginx默认配置
aliasnginxconf="vim/usr/local/nginx/conf/nginx.conf"
#以默认配置启动nginx
aliasnginxstart="/usr/local/nginx/sbin/nginx-c/usr/local/nginx/conf/nginx.conf"
#强制停止nginx服务器,如果有未处理的数据,丢弃
aliasnginxstop="/usr/local/nginx/sbin/nginx-sstop"
#推荐:优雅的停止nginx服务器,如果有未处理的数据,等待处理完成之后停止
aliasnginxquit="/usr/local/nginx/sbin/nginx-squit"
#重载nginx,用于修改配置后,直接刷新使配置生效
aliasnginxreload="/usr/local/nginx/sbin/nginx-sreload"
#检查nginx的配置是否可用
aliasnginxcheck="/usr/local/nginx/sbin/nginx-t"

#虚拟机共享文件夹路径
#aliasshare="/mnt/hgfs/ShareFolder/"

#Sourceglobaldefinitions
if[-f/etc/bashrc];then
./etc/bashrc
fi

5.粘贴后,按ESC退出编辑模式,然后按冒号+w+q+回车 保存

我那些alias里面不懂的去网络吧,基本用过linux的差不多都接触过或者一看就懂

热点内容
安卓按键精灵后台怎么用 发布:2024-11-09 06:06:48 浏览:356
想做seo寄生虫需要搭建服务器 发布:2024-11-09 06:01:37 浏览:142
安卓手机怎么找回微信聊天记录 发布:2024-11-09 05:52:06 浏览:261
哦外存储器 发布:2024-11-09 05:32:07 浏览:651
c编程全称 发布:2024-11-09 05:30:38 浏览:449
我的世界魂师服务器手机 发布:2024-11-09 05:25:52 浏览:920
云服务器ddos攻击 发布:2024-11-09 05:23:46 浏览:151
笔记本电脑配置落后怎么办 发布:2024-11-09 05:22:20 浏览:462
sql语句的分组 发布:2024-11-09 05:16:35 浏览:735
空调性能配置指哪些 发布:2024-11-09 05:07:09 浏览:822