·
[TOC]
一、简单的命令
1、ls
显示文件
- ls -lh 显示文件大小的时候,显示单位
- ls -l 列表的形式展示
- 第一列的字母表示
-
-
文件 -
d
文件夹 -
l
link
- ls -la 显示隐藏的文件
ls颜色说明:蓝色的表示文件夹,黑色的表示文件,绿色的表其权限为拥有所有权限 天蓝色的表示link
2、pwd
显示当前的路径
3、cd
切换当前目录的
/
表示根目录
~
当前的家目录
4、mkdir
创建目录
# mkdir 路径(可以是文件夹名称,也可以是包含文件夹的路径)
mkdir baipu
mkdir /u01/app/logs/baipu
#语法2 创建多层不存在的目录的时候
# mkdir -p 路径
# 当一次创建多层不不存在的目录的时候要用 ,要不会报错
mkdir -p /u01/app/logs/baipu/a/b/c
# 语法3 一次性创建多个目录
mkdir a b c
5、touch
创建文件
#touch 文件路径 可以多个可以单个/可以相对,可以绝对
touch /u01/app/logs/baipu/a.txt
touch a.txt b.txt c.txt d.txt
6、cp
copy复制文件或者是文件夹到指定的位置
#cp 被复制文件的路径 文档被复制到的路径
cp a.txt /u01/app/logs/b.txt #可以改变名字,但是一般不这么改名字
# cp -r 被复制文件的路径 文档被复制到的路径
# -r表示递归复制
7、mv
move移动
# mv 被移动的路径 移动到的位置
# 带-r表示递归复制
# 可以实现重命名
8、rm
删除文档
#rm 选项 被删除的路径
rm -r /u01/app/logs # 递归删除目录下所有的文件
rm -f a #强制,不询问的直接删除
rm -rf a b c # 删除多个文档
rm -rf linux* # 删除linuxk开头的文件
9、vim
文本编辑器,类似于notpad
10、输出重定向
> | 覆盖输出 |
---|---|
>> | 最佳输出 |
11、cat
打开文件
cat能够直接打开一个文件,直接把所有的文件都打印出来了
cat 可以打开多个文件,并合并起来
# cat 文件1 文件2 文件3 ... 文件n > 合并之后的文件
cat log1 log2 log3 > logs
二、进阶指令
1、df -h
查看磁盘空间
# df -h 加单位
Filesystem Size Used Avail Capacity iused
Filesystem | Size | Used | Avail | Capacity | iused | ifree | %iused | Mounted on |
---|---|---|---|---|---|---|---|---|
盘符分区 | 磁盘大小 | 已经使用大小 | 可用护 | 已使用的百分比 | 挂载点 |
2、free -m
查看内存使用情况
-m表示以Mb为单位进行查看
Swap内存不够用的时候,临时那硬盘空间当内存
3、head指令
查看文件的前n行,如果不指定n默认显示前十行
head -3 log.log # 显示前三行的内容
4 tail
查看文件的后n行 n不值得,默认显示后10行
tail -1 baipu.log
# tail -f 查看一个文件的动态变化
tail -500f baipu.log
5、less
查看文件 以较少的内容进行输出,按下辅助功能键进行查询
less 文件路径
空格 翻页
数字+回车到指定行
上下键表示行数处理
6、wc
用来统计文件内容信息的,
# 参数
-l 表示行数
-w 表示单词熟(根据空格判断的,中文不实用)
-c 表示字节熟
7、date
表示操作时间和日期的,用来读取和设置,不建议自己设置 shell脚本使用的时候
# 语法1显示时间
date # 2019年 1月12日 星期六 17时57分41秒 CST # cst表示当地时间
# 语法2 date +%F 输出的形式2019-01-12
# 等价于 date "+%Y-%m-%d"
# 语法3 date "+%F %T" 引号表示%F和%T是一个不可分割的整体
# 语法4 获取之前或者是之后的某个时间(备份)
date -d '-1 day' "+%Y-%m-%d %H-%M-%S"
# 符号 -表示以前,+表示以后
# 单位 day 天 month月 year年
%F 表示完整的年月日 %T表示完整的时分秒 %Y
格式 | 含义 |
---|---|
%F | 表示完整的年月日 |
%T | 表示完整的时分秒 |
%Y | 表示四位的年份 |
%m | 表示两个月的月份,带前导0 |
%d | 表示日期带前导0 |
%H | 表示小时,带前导0 |
%M | 表示分,带前导0 |
%S | 表示秒,带前导0 |
8、cal
表示当前月份的日历
#语法1
cal #等价于cal -1
# 语法2
cal -3 #表示输出上一个月+本月+下一个月的日历
#语法3
cal -y 2019 #表示规定的年份
9、clear/ctrl+L
清除信息
10 管道符 |
用于过滤 或者是特殊的用户或者是扩展处理的办法
# 过滤命令
# 包含Y字母的文档名称
ls | grep y # 前边的输出就是后边的输入,管道前边的输出就是管道后边的输入
# 特殊法案例 通过管道实现less的等价效果(了解)
cat baipu.log | less
# 扩展命令
# 统计目录下文档的总个数
ls / | wc -l
三、高级指令
1、hostname
读取/设置 设置重启回恢复
hostname # 输出完整的主机名
hostname -f #当前主机名的FQDN 全限定域名
2、id指定
查看一个用户的基本信息(用户id 用户组id 附加组id),如果不指定,就显示当前用户的基本信息
# 不指定用户
id
id baipu #显示指定用户的基本信息
验证用户信息 /etc/passwd/
验证用户组信息 /etc/group/
3、whoami
显示当前的用户名,一般都是shell脚本的时候用
4 ps -ef
服务器的进程信息
-e 类似于-A表示列出全部的进程(行)
-f 表示全部的列(显示全字段)
UID | PID | PPID | C | STIME | TIY | TIME | CMD |
---|---|---|---|---|---|---|---|
用户id | 进程 | 父级进程id,如果找不到父进程,称之为僵尸进程 | cpu占用率 | 设备启动的时间 | 终端设备发起该进程设备的识别符号, | 进程的执行时间 | 该进程名称或者是对应的路径 |
5、top
用来查看服务器进程占用的资源
top (动态显示)
快捷键
q键退出
M按内存mem从高到低降序排列
p cpu降序
6、du -sh
查看目录真实的大小
-s summaries只显示汇总大小
-h 单位自动化
7 find
查找
参数55个,但是只需要记住两个
find 路径范围 选项 选项的值
-name 根据名字搜索
-type 文档类型进行搜索
文档类型-(使用find的时候用f替换)表示文件,d表示文件夹
find /u01/app/logs -name *baipu.log
find /u01/app/logs -type f#d
8 service
用来控制一些软件的服务启动/停止/重启
语法: service 服务名 start/stop/restart
service httpq start #启动用户
9、kill命令
杀死进程
kill 进程id
killall 进程名称
10 、ifconfig
显示网卡信息
etch0第一块网卡的信息 eth0表示名称 Lo本地回环网卡,ip地址一般都是127.0.0.1
11、reboot
重启计算机
reboot # 重启
reboot -w # 模拟重启,但是不重启,只写关机与开机的日志,但是不重启
12、shutdown
作用:关机 (少用)
shutdown -h now 或者是shutdown -h 15:25 # 定时关机
13、uptime
输出持续在线时间,开机以来,到现在运行的时间
19:35 up 14 days, 4:40, 2 users, load averages: 2.10 1.74 1.68
14、uname
操作系统的信息
uname -a # 操作系统的全部信息
15、netstat -tnlp
网络链接信息
-t 只列出tcp协议的链接
-n 表示将地址从字母专程ip 协议转成端口号
-l 表示过滤出stat状态为listen的链接
-p 显示发起链接的进程pid和进程名称
16、man
包含里linux全部命令的手册
man ls
其他
删除光标之前的命令 ctrl+u 后ctrl+k
四、vim
1、打开文件的方式
vim 文件路径 # 打开指定的文件
vim +数字 文件路径 # 打开指定文件,光标移动到指定行
vim +/关键字 文件路径 # 打开指定文件,并且高亮显示关键次
vim 文件路径1 文件路径2 文件路径3 # 同时打开多个文件
2、命令模式 (删除行 复制行 移动光标 粘贴)
- 光标移动
- 移动到行首 shift+6(正则表达式)
- 光标行尾 shift + 4 (正则表达式)
- 光标首行 gg
- 光标末行 G(shift+g)
- 翻页上 ctrl+b(before) / PgUp
- 翻页下 ctrl + f(after) / PgDn
- 复制
- 光标所在行 yy 粘贴的地方p
- 多行 光标所在行为准(包含当前行) 向下指定行数 按键:数字+yy 指定位置p
- 可视化复制 ctrl + v 上下左右键选择,yy复制,p粘贴
- 剪切/删除
- 剪切/删除所在行 dd
- 向下删除/剪切 数字+dd
- 删除之后下一行不上移动 D
- 撤销/恢复
- 撤销:输入:u/直接u(undo)
- 恢复:ctrl + r
- 光标的快速移动
- 指定行 数字+G
- 当前光标为准 上下移动n行 数字 +上下方向
- 左右移动 数字+ 左右方向
- 末行模式,快速移动光标到指定行 :数字回车(:10)
3、编辑模式 (内容进行编辑)
进入方式 | 进入效果 |
---|---|
i | 光标所在字符前插入 |
a | 光标所在字符后开始插入 |
o | 光标所在行下另起一行 |
I | 光标所在行首开始插入 |
A | 光标所在行尾开始插入 |
O | 光标所在行上另起一行 |
S | 删除光标行,并开始插入 |
4、尾行模式 (搜索 替换 保存 退出 撤销 高亮)
操作 | 快捷键/命令 |
---|---|
保存 | :w |
另存为 | :w 文件地址 |
退出 | :q |
保存且退出 | :wq |
强制 | :q!(不保存) |
调用外部命令(了解) | !外部命令 |
搜索 | / |
搜索结果中的上一个/下一个: | N/n |
取消高亮 | nohl |
替换 | |
光标所在行 依次替换 | :s/关键字/新内容 |
光标所在行 全局替换 | :s/关键字/新内容/g |
替换整个文档中每一行第一个符合条件的内容 | :%s/关键词/新内容 |
整个文档的全局替换 | :%s/关键词/新内容/g |
显示/隐藏行号 | :set nu/:set nonu |
切换文件(打开多个文件的情况下) | |
查看当前打开的文件名称 | :files |
需要指定切换文件的名称 | :open 要打开的文件名 |
下一个文件/上一个文件 | :bn/:bp(backnext/backprev) |
5、模式切换
模式转换 | 快捷键 |
---|---|
命令->末行模式 | :英文符号 /(仅限于查找) |
命令->编辑模式 | a i |
末行->命令 | 1次esc 2次esc 删除命令行中所有的命令 |
编辑模式->命令 | 一次esc |
6 、实用功能
-
显示着色:
- syntax on 显示
- syntax off关闭代码着色
-
vim中计算器的使用
- 进入编辑模式
- 按下ctrl+r 输入=这个时候光标到最后一行
- 需要输入计算的内容,按下回车
-
vim的配置(重点)
- 末行模式下的输入的配置(临时的)
- 个人配置文件(~/.vimrc)
- 全局配置文件(vim自带,/etc/vimrc)
-
异常退出
- 没有正常的wq退出后,会显示一些异常退出的报错
- 解决办法:发现交换文件 文件名.swp文件,然后删除即可
-
退出的方式
- :wq
- :x如果没有改变就直接退出,如果改变了就保存并退出(而且如果不修改的话,不会更新修改时间,千万不要用大写的X)
加密 :X
-