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

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

cat ~/.b.shrc

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

alias cp='cp -i'

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

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

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

1.先进入编辑模式

vim ~/.bashrc

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

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

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

4.复制粘贴以下代码

# .bashrc

# User specific aliases and functions

alias rm='rm -i'

#alias cp='cp -i'

alias mv='mv -i'

alias ll="ls -l"

# 修改alias文件

alias aliasvim="vim /root/.bashrc"

# 重载alias文件使其生效,每次修改后都要刷新

alias aliasource="source /root/.bashrc"

# 修改环境变量,比如添加jre,tomcat,redis

alias profilevim="vim /etc/profile"

# 重载环境变量,使其生效

alias profilesource="source /etc/profile"

# 重启网卡

alias networkrestart="service network restart"

# 列出此服务器的网卡配置文件

alias networkvim="cd /etc/sysconfig/network-scripts/ && ls | grep ifcfg-"

# 修改DNS解析

alias nameservervim="vim /etc/resolv.conf"

# 修改hosts

alias hostsvim="vim /etc/hosts"

# 查看端口当前占用情况

alias portcheck="netstat -tunlp |grep "

# 查看firewall防火墙开放端口列表(白名单)

alias firewallports="firewall-cmd --zone=public --list-ports"

# 设置firewall防火墙的mysql3306端口互通

alias firewalladd="echo 'firewall-cmd --zone=public --add-port=3306/tcp --permanent'"

# firewall防火墙重启

alias firewallreload="firewall-cmd --reload"

# iptables防火墙添加指定端口命令

alias iptablesadd="echo '/sbin/iptables -I INPUT -p tcp --dport 8080 -j ACCEPT'"

# 查看防火墙白名单(应该是重启还在的)

alias iptableports="more /etc/sysconfig/iptables"

# 查看指定进程

#alias pid="ps aux | grep "

alias pid="ps -ef | grep "

# 查找根目录/下的名字为xx的文件,支持通配符*

alias search="find / -name "

# 查看Linux系统版本和位数

alias systeminfo='cat /etc/redhat-releasegetconf LONG_BITuname -a'

# 显示当前服务器时间

alias timenow='date +"%Y-%m-%d %H:%M:%S"'

# 更新服务器时间

#alias updatetime='ntpdate 0.centos.pool.ntp.org'

# 跳转tomcat路径

alias tomcatpwd="cd /disk1/app/tomcat8"

# 启动tomcat

alias tomcatstart="tomcatpwd && ./bin/startup.sh && tail -f ./logs/catalina.out"

# 停止tomcat

alias tomcatstop="tomcatpwd && ./bin/shutdown.sh && ps -ef | grep tomcat"

# 查看tomcat日志

alias tomcatlog="tomcatpwd && tail -200f ./logs/catalina.out"

# 批量启动多个tomcat

alias tomcatstartall="/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

alias tomcatstopall="/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值

alias rediskeys='redis-cli -a "abc@123" keys '

# 修改nginx默认配置

alias nginxconf="vim /usr/local/nginx/conf/nginx.conf"

# 以默认配置启动nginx

alias nginxstart="/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf"

# 强制停止nginx服务器,如果有未处理的数据,丢弃

alias nginxstop="/usr/local/nginx/sbin/nginx -s stop"

# 推荐:优雅的停止nginx服务器,如果有未处理的数据,等待处理完成之后停止

alias nginxquit="/usr/local/nginx/sbin/nginx -s quit"

# 重载nginx,用于修改配置后,直接刷新使配置生效

alias nginxreload="/usr/local/nginx/sbin/nginx -s reload"

# 检查nginx的配置是否可用

alias nginxcheck="/usr/local/nginx/sbin/nginx -t"

# 虚拟机共享文件夹路径

#alias share="/mnt/hgfs/ShareFolder/"

# Source global definitions

if [ -f /etc/bashrc ] then

        . /etc/bashrc

fi

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

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

cp文件时候可以不用加参数,但是cp文件夹的时候必须加-R或-r。解决方法如下:

1、首先将文件复制到另一个目录中:cp 文件名  目录名。复制a.txt至test目录中,则执行 cp a.txt /test 即可。

2、这里复制1234.txt文件到新文件2345.txt,copy 1234.txt 2345.txt,这里可以看到两个文件大小相同,时间戳不同。

3、复制1234.txt文件到新文件3456.txt并保持时间戳相同。

4、如果复制后的新文件名已存在,给1234.txt写了点内容后,再次复制为2345.txt,会发现原2345.txt文件会被覆盖,并不会有提醒直接就执行成功了。

5、为避免不知道有没有同名文件被覆盖可以添加-i选项,可以看到当新文件名已存在当前目录的时候会有覆盖确认提醒。

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

语法: 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 copy) 复制整个目录.若目录 dir2 不存在,则将目录dir1,及其所有文档和子目录,复制到目录 dir2 下,新目录名称为dir1.若目录dir2不存在,则将dir1,及其所有文档和子目录,复制为目录 dir2.

CP,Content Provider,即内容提供商, 指依法或依约定拥有版权和/或邻接权以及与版权作品有关的其他权利的,以及依法或依约定有权代表版权人和/或邻接权人进行许可授权、收取版权使用费用的公司实体或机构。

CP,同样也是COUPLE的缩写,即配对,主要用在同人作品中.

比如,在火影忍者耽美同人里说CP是鼬卡或鼬X卡卡西,就是以宇智波鼬和旗木卡卡西为配对进行创作.

在化学领域,CP是指化学纯,标签为中蓝,用于一般化学试验。

CP,C代表电荷共轭的变换,是粒子和反粒子互相对称,即对于粒子和反粒子;P代表宇称变换,是空间反射对称,即同一种粒子之间互为镜像。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11880156.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-19
下一篇2023-05-19

发表评论

登录后才能评论

评论列表(0条)

    保存