Linux命令
(1)帮助命令
1.man 命令或者配置文件 (功能描述:获得帮助信息)1
2.help 命令 (功能描述:获得shell内置命令的帮助信息)
(2)常用快捷键
1.ctrl+c 停止进程
2.ctrl+l 清屏;彻底清屏是:reset
3.ctrl+q 退出
4.tab 提示
5.ctrl+alt linux和Windows之间切换
6.上下键 查找执行过的命令
(3)文件目录类
1.pwd 显示当前工作目录的绝对路径
2.ls 列出目录目录下的内容
-a 全部的文件,隐藏文件(.的文件)也出来
-l 文件的属性与权限等等数据都出来
-h 人性化的将文件的属性列出来
列出的信息依次是:文件类型与权限 链接数 文件属主 文件属组 文件大小用byte来表示 建立或最近修改的时间 名字
3.cd 切换目录
- 回到上一次所在目录
4.mkdir 创建一个新的目录
-p 创建多层目录
5.rmdir 输出一个空的目录
6.touch 创建空文件
7.cp 复制文件或者目录
-r 递归复制整个文件夹
8.rm 移除文件或目录
-r 递归删除目录中所有内容
-f 强制执行删除操作,而不提示用于进行确认
-v 显示指令的详细执行过程
9.mv 移动文件与目录或重命名
10.cat 查看文件内容
-n 显示所有行的行号,包括空行
11.more 文件内容分屏查看器
空格 下一页
Enter 下一行
q 离开
Ctrl+F 向下滚动一屏
Ctrl+B 向上滚动一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号
12.less 分屏显示文件内容
13.echo 输出内容到控制台
-e 支持反斜线控制的字符转换
\n 换行符
14.head 显示文件头部内容
-n(行数) 可查看几行内容
15.tail 输出文件尾部内容
-n(行数) 可查看几行内容
-f 实时追踪该文档的所有更新
16.>覆盖和>>追加
17.In 软链接
In -s {原文件或目录} (软连接名)
rm -rf 软链接名
18.history 查看已经执行过历史命令
(4)时间日期类
1.date
date “+%Y-%m-%d %H-%M-%S” 显示年月日时分秒
date -d “1 days ago” 一天前的时间
date -d “-1 days ago” 明天的时间
date -s “2017-06-19 20:52:18” 设置系统当前时间
2.cal 查看日历
(5)用户管理命令
1.useradd 添加新用户
-g 组名 用户名 (添加新用户到某个组)
2.passwd 设置用户密码
3.id 查看用户是否存在
4.cat /etc/passwd 查看创建了那些用户
5.su 切换用户(有执行权限没有环境变量)
- 切换用户(环境变量及执行权限)
6.userdel 删除用户
-r 用户和用户组都删除
7.who 查看登录用户信息
whoami 显示自身用户名称
who am i 显示登录用户的用户名
8.sudo 设置普通用户具有root权限
在/etc/sudoers下加
用户名 ALL=(ALL) ALL 有密码
用户名 ALL=(ALL) NOPASSWD:ALL 用户没有密码
9.usermod 修改用户
-g 用户组 用户名
10.groupadd 新增组
11.groupdel 删除组
12.groupmod 修改组
-n 新组名 老组名
13.cat /etc/group 查看创建了那些组
(6)文件权限类
- d 文件类型 目录 没有d文件 I代表链接文档
2.rwx rwx rwx 属主权限 属组权限 其他用户权限
r 读4 w 写2 x 执行1
3.U:所有者 g:所有组 o:其他人 a:所有人(u,g,o的总和)
4.chown 改变所有者
-R 递归操作 (最终用户) (文件或者目录)
5.chgrp 改变所属组
(最终用户组) (文件或者目录)
(7)搜索查找类
1.find 查找文件或者目录
-name (查询方式) 按照指定的文件名查找模式查找文件
-user (用户名) 查找属于指定用户名所有文件
-size (文件大小) 按照指定的文件大小查找文件
2.grep 过滤查找及“|” 管道符
| 将前一个命令的处理结果输出传递给后面的命令处理
-n 显示匹配行及行号
3.which 查找命令
(8)压缩和解压类
1.gzip/gunzip 压缩/解压
不能压缩目录,不保留原来文件
2.zip/unzip 压缩/解压
-r 压缩目录
unzip -d 解压目录
3.tar 打包
-z 打包同时压缩
-c 产生.tar打包文件
-v 显示详细信息
-f 指定压缩后的文件名
-x 解包.tar文件
(9)磁盘分区类
1.df 查看磁盘空间使用情况
-h 以人们较易的形式自行显示
2.fdisk 查看分区
-l 显示所有硬盘的分区列表
Device:分区序列
Blocks:容量
3.mount/umount 挂载/卸载
(10)进程线程类
1.定义与区别
进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位(可以理解为进程是可以独立运行的)。
线程是进程的一一个实体,是cpu调度和分派的基本单位,他是比进程更小的能够独立运行的基本单位,线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源。一个线程可以创建撤销另外一个线程。(在1个进程中可以有多个线程,多个线程之间可以互相操作)。
2.区别
一-个线程只能属于一个进程,而一个进程可以拥有多个线程。线程是进程工作中的最小单位。一个进程会分配一个 地址空间,进程与进程之间不共享地址空间。即不共享内存。同一个进程下的不同的多个线程,共享父进程的地址空间。线程在执行过程中,需要协作同步。不同进程的线程间要利用消息通信的办法实现同步(中间件、消息队列)。线程作为调度和分配的基本单位,进程作为拥有资源的基本单位
3.进程优点
1.每个进程 互相独立、不影响主程序的稳定性,子进程崩溃不影响其他进程
2.通过增加 CPU,就可以扩充性能
3.可以尽 量减少线程加锁与解锁的影响,极大的提高了性能
4.缺点
1.逻辑控制复 杂,需要和主程序交互
2.多进程调度开销大
5.线程优点
1.程序逻辑和控制方式简单
2.所有线程可以直接共享内存和变量等
3.线程方式消耗的总资源比进程方式少
6.缺点
1.每个线程与主程序共用地址空间,最大内存地址受限
2.线程之间的同步和加锁不易控制
3.一个 线程的崩溃可能影响到整个程序的稳定性
7.ps 查看当前系统进程状态
ps aux | grep xxx (查看系统中所有进程)
ps -ef | grep xxx (可以查看子父进程之间的关系)
-a 选择所有进程
-u 显示所有用户的所有进程
-x 显示没有终端的进程
%CPU:该进程占用CPU资源的百分比,占用越高,进程越耗费资源
%MEM:该进程占用物理内存的百分比,占用越高,进程越耗费资源
8.ps -ef 显示信息说明
PID:进程ID
PPID:父进程ID
如果想查看进程的CPU占用率和内存占用率,可以使用aux
如果想查看进程的父进程ID可以使用ef
9.kill 终止进程
-9 表示强迫进程立即停止
killall 通过进程名字杀死进程
10.pstree 查看进程树
-p 显示进程的PID
-u 显示进程的所属用户
11.top 查看系统健康状态
-d 指定top 命令每隔几秒更新。默认是3秒在top命令的交互模式当中可以执行的命令
-i 使top不显示任何闲置或者僵死进程
-p 监控指定的进程。当监控多个进程时,进程ID以逗号分隔。这个选项只能在命令行下使用
-h 帮助
12.top任务区命令
P 以CPU使用率排序,默认就是此项
M 以内存的使用率排序
N 以PID排序
q 退出top
z 彩色/黑白显示
Cpu(S): 0.1 %us 用户模式占用的CPU百分比
99.7%id 空闲CPU的CPU百分比
Mem:625344k total 物理内存的总量,单位KB
571504k used 已经使用的物理内存数量
53840k free 空闲内存
13.vmstat
可以监控操作系统的进程状态、内存、虚拟内存、磁盘IO、CPU的信息
14.free
能够监控系统的内存使用状态。
其中total:总计物理内存的大小;Used:已使用多大;Free:可用有多少;shard:多个进程共享的内存总额; buffers/cached:磁 盘缓存大小