进入文件:vim *.格式 例:hello.java
插入模式:按下i、I、o、O、a、A、r、R等字幕之后进入编辑模式
命令行模式:可以提供相关指令 完成读取存盘替换 离开等动作
三种退出模式:wq :q :q!
1、保存并退出编辑模式
2、退出不保存编辑模式(可保存)
3、退出不保存编辑模式并返回
yy 拷贝当前行
p 粘贴
3yy 拷贝3行
dd 删除当前行
3dd 删除三行
/关键字 查找关键字 n下一个
/set nu 设置文件行号
/set nonu 取消文件行号
u 撤销
10gg 跳转到第10行或者 10 shift+g
G 跳转到第一行
gg跳转最后一行
shutdown -h now 立刻关机
shutdown -h 1 1分钟后关机
shutdown -r now 立刻重启
halt 关机
reboot 立刻重启
sync 把内存的数据同步到磁盘上
为防止数据丢失,每次重启、关机之前应该使用一下sync
logout 注销当前用户 例:退出root用户登录 logout
注:此命令针对远程登录 图形登录界面无效
用户管理:
useradd
useradd -d (指定家目录)
useradd -g (指定用户组)
给用户名改密码:passwd 用户名
删除用户:
userdel 用户名(保留家目录)
删除用户并保留home家目录:userdel 用户名
删除用户并删除家目录:userdel -r 用户名
查询用户信息
id 用户名
切换用户 su 用户名 或 su - 用户名
增加组 groupadd 组名
删除组 groupdel 组名
修改用户组 usermod -g 用户组 用户名
pwd 显示当前工作目录的绝对路径
ls 显示当前目录下所有文件和目录
-a 显示当前目录所有的文件和目录,包括隐藏的
-l 以长列表的方式显示文件内的内容
cd 切换目录
cd .. 返回到当前目录的上一级
cd ~ 或者 cd: 回到家目录
cd - 返回上次操作的位置
mkdir 创建目录 例:mkdir /home/dog 在home目录下创建dog目录
mkdir只能创建单级目录,要想创建多级目录 可以mkdir -p 例:mkdir -p /home/pet/cat
rmdir 删除空目录 例:rmdir /home/dog 删除dog目录
如果要删除非空目录 则要使用rm -rf /home/dog
touch 文件名 就可以创建一个空文件 例:touch hello.txt
可以一次性创建多个文件 用空格分开 比如:touch ok1.txt ok2.txt
cp指令
cp指令拷贝文件到指定目录
cp[选项] source dest
-r 递归复制整个文件夹
例如 将home/aaa.txt 拷贝到home/bbb目录下
cp aaa.txt bbb/
如果需要强制覆盖 则在cp前面加反斜杠\cp -r test/ demo/
rm 删除某个文件
-r 递归删除整个文件夹
-f 强制删除不提示
mv指令:移动文件(剪切) 或重命名
mv 旧名字 新名字
mv 旧文件或路径 新文件或路径
cat (只读)查看文件内容
cat -n /ect/profile | more -n 显示行号 | more 分页 用空格查看下一页 | 管道符
空格 向下翻页 (一页)
Enter 代表向下翻(一行)
q 代表立刻离开more 不再显示该文件内容
Ctrl+F 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前的行号
:f 输出文件名和当前的行号
less指令用来分屏查看文件内容 功能与more类似 但是比more强大 支持各种显示终端 less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容 对于显示大型文件具有较高的效率
less /etc/profile
enter 一行一行的往下翻
空格 向下翻动一页
pagedown 向下翻动一页
pageup 向上翻动一页
/字符串 向下搜索字符串的功能 n向下查找 N向上查找
?字符串 向上搜索字符串的功能 n 向上查找 N 向下查找
q离开less
> 指令和 >> 指令
输出重定向和追加
> 会将原来的文件内容覆盖掉
>> 不会覆盖原来的内容 而是追加到原来文件的尾部
ls -l > a.txt 功能描述:列表的内容写入到文件a.txt文件中 (覆盖写)
ls -al >> a.txt 追加写
cat 文件1> 文件2
echo “内容” >> 文件
more 也可以读取文件内容 more a.txt
echo 输出内容到控制台
echo [选项][输出内容]
head 查看前10行 或者查看前5行 head -n 5 文件
tail 查看后10行 或者查看后5行 tail -n 5 文件 tail -f 实时监控
ln指令 软链接
ln -s 源文件目录 软链接名(给源文件目录创建一个软链接)
例:在/home目录下创建一个软链接linktoroot 链接到/root目录
ln -s /home ../root
删除软链接
rm -rf 软链接名(仅仅名字就好,不需要加/ )
注:若我们使用pwd指令查看当前所在目录时候,仍然看到的是软链接所在目录 拿上例举例 当我们从home中打开软链接到root 再用pwd查看当前位置时候,查看到的是会在home下
history指令 查看已经执行过的指令 也可以执行历史指令
history 查看已经执行过的历史命令
history 10 查看最近执行的10条命令
! 5 执行编号为5的历史指令
时间日期类
date 显示当前日期
date+%Y 显示当前年份
date+%m 显示当前月份
date+%d 显示当前是哪一天
date“+%Y-%m-%d %H-%M-%S”
date -s 设置时间
date -s “2020-7-29 14:00:00”
cal指令 查看日历指令
cal
cal 2020 显示2020年日历
搜索查找类
find 指令将从指定目录向下递归遍历各个子目录,将满足条件的文件或者目录显示在终端
find 搜索范围 选项
选项说明:
-name<查询方式> 按照指定的文件名查找模式查找文件 例: find /home -name *hello.txt 支持通配符
-user<用户名> 查找属于指定用户名所有文件 例: find /opt -user root
-size<文件大小> 按照指定的文件大小查找文件 例: find / -size +20M +n大于 -n小于 n等于 如果文件查找的内容过多 可以使用CTRL+C终止查询
locate可以快速定位文件路径 ,locate指令利用事先建立的系统中所有文件名称及路径的locate数据库事先快速定位给定的文件。locate指令无需遍历整个文件系统,查询速度较快,为了保证结果的准确度,管理员必须定期更新locate时刻
特别说明:由于locate指令基于数据库进行查询,所以第一次运行前,必须使用updatedb指令创建locate数据库
即:第一次使用的时候必须要使用updatedb 然后使用locate定位:locate hello.txt
案例:请使用locate指令快速定位hello.txt文件所在目录
grep过滤查找
(管道符,| 表示将前一个命令的处理结果输出传递给后面的命令处理)
grep 选项 查找内容 源文件
查用选项:
-n 显示匹配行及行号
-i 忽略字母大小写
例:cat hello.txt | grep -ni yes
压缩和解压缩
gzip /gunzip
gzip用于压缩文件
gunzip用于解压缩
gzip 文件 压缩文件 将文件压缩为*.gz文件(压缩完成后不保留源文件)
gunzip 文件.gz 解压缩文件
zip /unzip指令
zip 压缩
unzip 解压缩
zip 选项 XXX.zip 将要压缩的内容
unzip 选项 XXX.zip 将要解压缩的内容
常用选项:
-r 递归压缩 对当前文件以及目录递归压缩
-d 解压后要存放的目录
zip -r mypackage.zip /home
unzip -d /opt/tmp mypackage.zip
tar 打包指令
tar 选项 XXX.tar.gz 打包的内容 描述:打包目录 压缩后的文件格式:.tar.gz
-c 产生.tar打包文件
-v 显示详细信息
-f 指定压缩后的文件名
-z 打包同时压缩
-x 解包.tar文件
-C 解压到指定目录,否则会在当前目录下也解压
打包压缩例:tar -zcvf a.tar.gz a1.txt a2.txt
解压例:tar -zxvf a.tar.gz
解压到指定路径: tar -zxvf myhome.tar.gz -C /opt/