【运维知识基础篇】Linux常用基础命令(二)

简介: 【运维知识基础篇】Linux常用基础命令(二)

今天继续给大家更新Linux常用基础命令,分别是tree、cp、mv、rm、cat、vim及其快捷键。

1.tree 目录    #用树状图形式查看目录结构,首先需要用下面命令安装
yum install tree -y
tree -L 1 目录:可以查看指定目录下的下一层目录和文件,查看深度等级,显示最大的深度等级为1级,不加默认显示所有深度
示例:
[root@VMware-koten ~]#tree /opt
/opt
├── blog
└── www
2 directories, 0 files
[root@VMware-koten ~]#
2.cp 文件 目录    #copy,复制文件到指定目录,不影响原文件
cp 文件1 文件2 目录:拷贝多个文件到目录,不能改名字了,后面必须跟目录
cp -r 要拷贝的目录 目标目录:将要拷贝的目录及其下面所有文件拷贝到目标目录
\cp -r 第二次覆盖不提示是否覆盖 
注意:使用\取消系统增加的默认参数
示例1:将1.txt复制到/opt目录
[root@VMware-koten ~]##将1.txt复制到/opt目录
[root@VMware-koten ~]#cp 1.txt /opt
[root@VMware-koten ~]#ll
total 0
-rw-r--r--. 1 root root 0 Feb 27 10:50 1.txt
[root@VMware-koten ~]#ll /opt
total 0
-rw-r--r--. 1 root root 0 Feb 27 10:51 1.txt
[root@VMware-koten ~]#
示例2:将1.txt拷贝到/tmp目录下并改名为1.bak
[root@VMware-koten ~]#cp 1.txt /tmp/1.bak
[root@VMware-koten ~]#ll /tmp/1.bak
-rw-r--r--. 1 root root 0 Feb 27 10:54 /tmp/1.bak
[root@VMware-koten ~]#
示例3:在家目录下创建1 2 3文件夹,将1 2文件夹拷贝到3文件夹当中
[root@VMware-koten ~]#mkdir 1 2 3
[root@VMware-koten ~]#cp -r 1 2 3
[root@VMware-koten ~]#ll
total 0
drwxr-xr-x. 2 root root  6 Feb 27 11:44 1
drwxr-xr-x. 2 root root  6 Feb 27 11:44 2
drwxr-xr-x. 4 root root 24 Feb 27 11:45 3
[root@VMware-koten ~]#ll 3
total 0
drwxr-xr-x. 2 root root 6 Feb 27 11:45 1
drwxr-xr-x. 2 root root 6 Feb 27 11:45 2
示例4:复制koten目录到/opt下
[root@VMware-koten ~]#mkdir koten
[root@VMware-koten ~]#cp koten /opt
cp: omitting directory ‘koten’#系统不能直接复制目录到/opt
[root@VMware-koten ~]#cp -r koten /opt
[root@VMware-koten ~]#ll /opt
total 0
drwxr-xr-x. 2 root root 6 Feb 27 11:57 koten
[root@VMware-koten ~]#
示例5:复制koten目录到/opt并改名
[root@VMware-koten ~]#cp -r koten /opt/koten_bak
[root@VMware-koten ~]#ll /opt
total 0
drwxr-xr-x. 2 root root 6 Feb 27 11:57 koten
drwxr-xr-x. 2 root root 6 Feb 27 12:00 koten_bak
[root@VMware-koten ~]#
示例6:覆盖目录下所有文件
1.复制/etc到家目录
[root@VMware-koten ~]# cp -r /etc .
2.覆盖/etc/不提示
[root@VMware-koten ~]# \cp -r /etc .
在LInux系统中为了安全系统给命令默认加上了安全参数
rm -i
cp -i
mv -i
使用\取消系统增加的默认的参数 不提示
[root@oldboyedu ~]# \cp -i 1.txt /opt/  # -i参数 交互参数 如果再手动加上,就又会提示了
注意:如果目录为空就不会提示,不管加不加-i,加不加\转义符
3.mv    #move,移动文件或者目录
mv 源文件 目标路径
mv 源文件 目标文件
mv 源文件 修改文件后的名称
mv 文件夹 文件夹 文件夹 目标路径
示例1:创建1.txt,移动至/opt/下面
[root@VMware-koten /]#touch 1.txt
[root@VMware-koten /]#mv 1.txt /opt/
[root@VMware-koten /]#ll /opt/
total 0
-rw-r--r--. 1 root root 0 Feb 27 15:00 1.txt
[root@VMware-koten /]#
示例2:移动多个文件
[root@VMware-koten /opt]#touch 2.txt
[root@VMware-koten /opt]#ll
total 0
-rw-r--r--. 1 root root 0 Feb 27 15:00 1.txt
-rw-r--r--. 1 root root 0 Feb 27 15:03 2.txt
[root@VMware-koten /opt]#mv /opt/* ~
[root@VMware-koten /opt]#ll ~
total 0
-rw-r--r--. 1 root root 0 Feb 27 15:00 1.txt
-rw-r--r--. 1 root root 0 Feb 27 15:03 2.txt
[root@VMware-koten /opt]#
示例3:覆盖文件
[root@VMware-koten /opt]#touch 1.txt ~
[root@VMware-koten /opt]#ll
total 0
-rw-r--r--. 1 root root 0 Feb 27 15:05 1.txt
[root@VMware-koten /opt]#mv 1.txt ~ #(\mv 1.txt)不提示用1.txt
mv: overwrite ‘/root/1.txt’? y 
[root@VMware-koten /opt]#
示例4:移动并修改名称,用ll -i查看不会修改源文件
[root@VMware-koten ~]#ll -i
total 0
33575037 -rw-r--r--. 1 root root 0 Feb 27 15:05 1.txt
33575016 -rw-r--r--. 1 root root 0 Feb 27 15:03 3.txt
[root@VMware-koten ~]#mv 3.txt 2.txt
[root@VMware-koten ~]#ll -i
total 0
33575037 -rw-r--r--. 1 root root 0 Feb 27 15:05 1.txt
33575016 -rw-r--r--. 1 root root 0 Feb 27 15:03 2.txt
[root@VMware-koten ~]#
注意:当想移动目前所在的目录到目标目录时,可以使用绝对路径或..相对路径,无法使用.代表当前路径。
把当前目录移动到别的地方去需要用./,从别的地方移动过来需要用.
总之,.是目录里面的一个东西,可以代表一个坐标,无法表示整个目录。
4.rm    #删除 remove
rm [参数选项] 文件/目录
rm -f 文件/目录 不提示直接删除
rm -r 文件/目录 删除目录
rm -rf 文件/目录 删除目录不提示
示例1:不加参数直接删除
[root@VMware-koten ~]#touch 1.txt
[root@VMware-koten ~]#rm 1.txt 
rm: remove regular empty file ‘1.txt’? y
[root@VMware-koten ~]#ll
total 0
[root@VMware-koten ~]#
示例2:不提示直接删除,两种方式
[root@VMware-koten ~]#touch 1.txt 2.txt
[root@VMware-koten ~]#\rm 1.txt
[root@VMware-koten ~]#ll
total 0
-rw-r--r--. 1 root root 0 Feb 27 16:06 2.txt
[root@VMware-koten ~]#rm -f 2.txt 
[root@VMware-koten ~]#ll
total 0
[root@VMware-koten ~]#
5.cat    #查看文件
cat 文件名
cat 路径下文件
cat -n 显示行号
示例1:查看/etc/hosts
[root@VMware-koten ~]#cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
[root@VMware-koten ~]#
示例2:查看多个文件
[root@VMware-koten ~]#touch 1.txt 2.txt
[root@VMware-koten ~]#echo 1111 > 1.txt
[root@VMware-koten ~]#echo 2222 > 2.txt
[root@VMware-koten ~]#cat *.txt
1111
2222
[root@VMware-koten ~]#
示例3:合并文件内容
[root@VMware-koten ~]#cat 1.txt 2.txt > all.txt
[root@VMware-koten ~]#cat all.txt 
1111
2222
[root@VMware-koten ~]#
示例4:显示文本行号
[root@VMware-koten ~]#cat -n all.txt 
     1    1111
     2    2222
[root@VMware-koten ~]#
6.vim    #文本编辑器,vi的升级版本
安装vim命令:yum -y install vim
vim 直接回车 #显示说明书
vim 文件名 #如果vim文件不存在,则会自动创建
vim快捷键 #提高工作效率
home、^、0 #到行首
End、$ #到行尾
10G #快速定位光标到10行
gg、1G #快速移动光标到第1行
G #快速到文件的底部
yy #复制光标所在行
p #粘贴,默认粘贴在光标下一行
3p #粘贴3次
u #撤销操作
dd #删除光标所在行
3dd #删除3行
x #删除光标后面的内容
X #删除光标前面的内容
底行模式下:
:set nu #显示行号 
:set nonu #取消显示行号 
:wq保存并退出 
:q退出(文件未修改)
:q!强制退出不保存
:wq!    #强制保存退出
视图模式进入编辑模式,i或a,a是追加,i是插入
o在光标的下一行进入编辑模式
O在光标的上一行进入编辑模式
C删除光标所在位置到行尾,并进入编辑模式
D删除光标所在位置到行尾,并向前进1
dw删除光标所在的地方到最先遇到的特殊符号 可以用于删单词
dG删除光标所在的位置到文件尾部
ZZ保存并退出
块模式(-- VISUAL BLOCK -- ):在视图模式下 ctrl+v进入模式
方向键选择行数
输入大写的I 输入想要插入的内容 按两次ESC或者按一次等一秒 实现多行同时输入一个内容的效果
输入小写的d 可以直接删除选中内容
示例1:在当前目录编辑koten.txt,输入www.koten.vip
第一步:编辑文件
[root@VMware-koten ~]#vim koten.txt
第二步:按i或者a进入到编辑模式 左下角出现INSERT提示
第三步:输入内容www.koten.vip
第四步:按esc返回试图模式,输入:wq,保存并退出
vim编辑文件的过程:vim koten.txt
第一步:编辑文件会新创建一个隐藏文件名称为.koten.txt.swp
linux中以.开头的文件称为隐藏文件
第二步:如果正常写入和保存退出 系统会移动.koten.txt.swp为koten.txt
如不正常退出则出产生.koten.txt.swp,打开的时候产生异常。
报错原因:
1、Xshell与服务器断开(断网)
2、有别的同事一起编辑此文件(退出一个即可)
3、没保存直接关闭窗口
4、台式机直接断电
5、两个窗口同时打开操作
解决办法:想要修改后的文件,用vim -r 文件名进入后回车,发现之前编辑的内容
输入:wq保存后退出,然后删除swp文件,再进入文件就不会提示了;
不想要修改后的内容,直接删除swp文件即可。
注意:在企业中服务器上别人创建的文件,尽量使用mv移动,不要使用rm

我是koten,10年运维经验,持续分享运维干货,感谢大家的阅读和关注!

相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
目录
相关文章
|
17天前
|
运维 安全 Linux
Linux中传输文件文件夹的10个scp命令
【10月更文挑战第18天】本文详细介绍了10种利用scp命令在Linux系统中进行文件传输的方法,涵盖基础文件传输、使用密钥认证、复制整个目录、从远程主机复制文件、同时传输多个文件和目录、保持文件权限、跨多台远程主机传输、指定端口及显示传输进度等场景,旨在帮助用户在不同情况下高效安全地完成文件传输任务。
124 5
|
17天前
|
Linux
Linux系统之expr命令的基本使用
【10月更文挑战第18天】Linux系统之expr命令的基本使用
55 4
|
4天前
|
缓存 监控 Linux
|
7天前
|
Linux Shell 数据安全/隐私保护
|
8天前
|
域名解析 网络协议 安全
|
14天前
|
运维 监控 网络协议
|
15天前
|
监控 Linux Shell
|
18天前
|
Unix Linux
Linux | Rsync 命令:16 个实际示例(下)
Linux | Rsync 命令:16 个实际示例(下)
29 3
Linux | Rsync 命令:16 个实际示例(下)
|
2天前
|
监控 Linux
Linux常用命令-2
本文继续介绍Linux常用命令,涵盖目录操作、文件操作、系统信息和进程管理等类别。具体包括mkdir、rmdir、cp、mv、rm、touch、whereis、whatis、dmesg、free、date、cal、ps、kill、killall和top等命令的使用方法和常用参数。
23 7
|
2天前
|
Linux Shell
Linux常用命令-1
本课程要求学生熟悉Linux系统终端窗口和命令基础,掌握文件目录类、系统信息类、进程管理类及其他常用命令,学时为3-6小时。课程内容涵盖Linux命令的特点、常见命令的使用方法及其应用场景,如文件浏览、目录切换、内容显示等。建议学生逐个操作命令并及时反馈问题。
21 5