linux系统下文件的操作
![image]()
1、复制文件
复制文件命令:
cp >>copy的缩写
格式:cp [参数] [被复制的文件路径] [复制到的路径]
参数:
-a :保留文件原来的属性
-r :递归复制
示例:
1、将/root目录下的anaconda-ks.cfg文件复制到/root/data目录
[root@jinx ~]# cp /root/anaconda-ks.cfg /root/data
2、将data里的anaconda-ks.cfg文件连同文件夹复制到/root目录下的test文件
[root@jinx ~]# cp -ra /root/data/anaconda-ks.cfg /root/test
``` 3、将/root目录下的文件a.txt和anaconda-ks.cfg文件同时复制到/root目录下的test文件夹
[root@jinx ~]# cp /root/data/a.txt /root/data/anaconda-ks.cfg /root/test
ps:linux里不能直接复制文件夹
补充:1.Esc+.:上一条命令到最后一个元素
2.ls -l 等价于 ll
3.linux中的连接相当于快捷方式
4.stat命令可以查看文件详细属性
![image]()
2、移动文件
在linux里移动文件相当于剪切操作
移动文件命令:
mv
语法格式:mv [需要移动的文件路径]
示例:
1、将/root/data目录下的a.txt文件移动到/root/test文件中
[root@jinx ~]# mv /root/data/a.txt /root/test/
2、将/root下的data文件夹移动到/root下的test
[root@jinx ~]# mv /root/data /root/test
![image]()
3、删除文件
删除文件的方式有两种
1、物理删除:直接删除文件
2、逻辑删除:将文件隐藏,没有直接隐藏
一般情况下,我们所操作的都是逻辑删除
下面讲一下linux里的物理删除命令:
rm
格式:
rm [参数][需要删除的文件的路径]
参数:
-f :不提示直接删除
-r:递归删除目录及其内容
-i:每次移除前提示,需要用户确定是否删除:y(是)/n(否)
示例:
1、删除/root下的test里的anaconda-ks.cfg文件
[root@jinx ~]# rm /root/test/anaconda-ks.cfg
rm: remove regular file ‘/root/test/anaconda-ks.cfg’? y
2、删除/root目录下的test里的data文件夹及里面的文件
[root@jinx ~]# rm -rf /root/test/data
补充:在linux系统中,不能直接删除文件夹
在linux系统中禁止使用:rm -rf /*
rm -rf/*的含义是,将根目录下的所有文件夹及内容全部删除
在linux系统中,rm是一个很危险的操作,一般不要使用,但是为了防止误操作rm命令,有以下几种方法
1、将rm命令改一个名称
1:查找命令的存放路径:whilc [命令]
2:利用mv方法 mv rm 新的名字
2、修改命令别名
在linux中,常用的命令其实都是有别名的,也就是我们操做命令的时候,实际上效果是别名的效果
1、利用查看命令别名的命令:alias # 查看系统别名
2、修改命令的别名
格式:alias [命令]='新的别名' 设置系统别名
ps:在我们平时使用命令时都是以别名的效果呈现的,所以如果不想要这种效果,可以在命令前面加'/':
示例:\rm a.txt
![image]()
4、vi/vim编辑器
- vi编辑器三种模式之间的转换
进入vi编辑器界面就是命令行模式,末行模式和编辑模式不能互通,只能通过命令模式转换
![image]()
vim和vi都是Linux系统中的编辑器,vim是vi的升级版,相对vi功能较为齐全
1、安装vim
yum install vim -y
2、打开编辑文件:vim [文件路径]
[root@jinx ~]# vim a.txt
3、vi编辑器有三种模式
命令模式
末行模式
编辑模式
4、进入编辑模式
i :在光标之前输入
o :在光标处新创建一行
a :在光标之前输入
5、保存并退出
1、进入末行模式
2、执行操作
w:保存
q:退出
!:强制(编写的内容全部放弃)
6、解决vim编辑异常
发生编辑异常的情况:
杀死vim进程
1、查看vim进程
[root@localhost ~]# ps -ef | grep vim
2、杀死vim进程
[root@localhost ~]# kill -9 pid (pid代表当前进程的编号)
示例:root 2856 2694 0 21:04 pts/1 00:00:00 grep --color=auto vim
2856就是进程的id
如何解决异常:
1、删除'.文件路径.swp' 文件,关于这个问题,在文章末尾会对vim的生命周期进行阐述。
实际上我们每次在进入vim编辑操作文件时,是生成一个'.文件路径.swp'文件,并对该文件进行操作
2、继续编辑
vim -r [文件路径]
3、放弃编辑
vim -n [文件路径]
7、在命令模式光标的快速移动的快捷键
- 快速切换光标到行底
G
- 快速将光标切换到首行
gg
- 快速切换到当前行的行首
0
- 快速切换到当前行的行尾
$
- 快速跳转到指定行
1、进入末行模式
2、输入想要跳转的行数
3、按回车键
- 快速复制文本内容消息
yy 复制当前行
nyy 从光标所在行往下复制n行(包括当前行)
- 快速粘贴文本内容(只能配合yy使用)
小写p :在光标的下一行粘贴
大写P :在光标的上一行粘贴
- 删除文本内容
dd :删除光标所在的当前行
ndd : 从光标所在行往下删除n行(包括当前行)
- 返回上一次的操作
u
- 取消执行的返回操作
ctrl + r
- 显示行号
1、进入末行模式
2、set nu
3、回车
- 取消行号
1、进入末行模式
2、set nonu
3、回车
- 搜索内容
1、进入末行模式
2、输入/
3、输入要搜索的内容
4、回车
-忽略大小写 (和搜索配合使用)
1、进入末行模式
2、set ic
3、回车
- 控制光标移动(专指搜索的内容)
n :下一个
N :上一个
- 可视化编辑(命令模式)
1、ctrl + v
2、编辑:Shift + i
3、操作完以后按Esc退出可视化编辑
补充:实时监控文件内容的变化:
tail -f [要监控的文件]
批量往文件里写入内容命令:
while true;do echo '内容' >> 文件路径;done
![image]()
- vim编辑生命周期
![image]()
![image]()