Linux常用编译指令总结
1. nohup 不挂断运行命令
①退出终端后不会影响程序的运行,用于在系统后台不挂断的执行命令
②英文全称no hang up,nohup 命令,在默认情况下(非重定向时),会输出一个名叫 nohup.out 的文件到当前目录下,如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。
语法格式:
nohup Command [ Arg … ] [ & ]
参数说明:
Command:要执行的命令。
Arg:一些参数,可以指定输出文件。
&:让命令在后台执行,终端退出后命令仍旧执行
2. touch 创建文件
mkdir 创建文件夹
cat 显示文件内容
cat a文件 b文件 c文件 > 合并到abc文件
3.jobs -l 查看后台进程
jobs命令只能查看当前终端生效的命令,关闭终端后,在另一个终端jobs无法查看后台进程,可以利用ps命令查看
4. ps -ef
参数说明:
a: 显示所有程序
u:以用户为主的格式来显示
x:显示所有程序,不以终端机来区分
5. find 路径 -name 文件名
find -name ".mk" | xargs grep -r "test" //将find找到的每一个文件的名字用 grep -r来执行一下
6.压缩解压缩命令
gzip 压缩
gzip -d 解压缩
tar -zcvf 压缩后命名 需要压缩的文件
tar -zxvf 压缩包名 //解压缩
zip -r 压缩后命名 需要压缩的文件
7.文件长度
less /etc/passwd
wc 统计文件字数
8. kill 杀死进程
kill 进程id
kill -9 进程id //强制结束
9.关机重启
shutdown -r now //立刻重启
shutdown -h 21:30 //定时重启
shutdown -h +10 //十分钟后重启
init 0 //关机
init 6 //重启
10 top / who
top 命令:
18:28 当前系统时间,
4days系统上一次重启,到目前的时间;
9 users :当前有9个用户登录系统;
load average 2.39,5.38,9.06 : 系统负载情况,load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。
tasks: 当前共有742个进程,处于运行中的有2个,693个在休眠(sleep),stoped状态的有47个,zombie状态(僵尸)的有0个
cpu状态:
us — 用户空间占用CPU的百分比。
sy — 内核空间占用CPU的百分比。
ni — 改变过优先级的进程占用CPU的百分比
id — 空闲CPU百分比
wa — IO等待占用CPU的百分比
hi — 硬中断(Hardware IRQ)占用CPU的百分比
si — 软中断(Software Interrupts)占用CPU的百分比
内存状态:依次是物理总内存,使用中的内存,空闲内存,缓存中的内存
swap交换分区:
依次是交换分区总量,使用的交换分区,空闲的交换分区,缓冲交换分区
任务监控:
PID — 进程id
USER — 进程所有者
PR — 进程优先级
NI — nice值。负值表示高优先级,正值表示低优先级
VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA
SHR — 共享内存大小,单位kb
S — 进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程
%CPU — 上次更新到现在的CPU时间占用百分比
%MEM — 进程使用的物理内存百分比
TIME+ — 进程使用的CPU时间总计,单位1/100秒
COMMAND — 进程名称(命令名/命令行)
在top基本视图中
①按键盘数字“1”,可监控每个逻辑CPU的状况
②敲击键盘“b”(打开/关闭加亮效果)
③ 敲击键盘“x”(打开/关闭排序列的加亮效果)
④通过”shift + >”或”shift + <”可以向右或左改变排序列
⑤敲击“f”键,top进入另一个视图
⑥回车”返回基本视图,可以看到多了“CODE”和“DATA”两个字段
who命令:
a,--all 同-b –d –login –p –r –t –T -u
-b,--boot 显示最近系统启动时间
-d,--dead 显示死亡过程
-H,--heading 显示栏目行
-l,--login 显示系统登录过程
--lookup 尝试通过DNS规范化主机名
-m 只显示与stdin关联的主机名和用户
-p,--process 显示由init生成的活动进程
-q,--count 显示所有登录名和登录用户数
-r,--runlevel 显示当前运行级别
-s,--short 默认值,只显示名称,line(行?)和时间
-t,--time 显示上次系统时钟更改
-T,-w,--mesg 用+,-,?添加用户消息状态
-u,--users 列出登录的用户
--message 同-T
--writable 同-T
--help 显示帮助信息并关闭
--version 显示版本信息并关闭
11. df /du
常用df查询当前挂载磁盘的使用情况,用du查看当前目录哪个文件占用较多
du 命令参数:
-a #显示目录中文件的大小 单位 KB 。
-b #显示目录中文件的大小,以字节byte为单位。
-c #显示目录中文件的大小,同时也显示总和;单位KB。
-k 、 -m 、#显示目录中文件的大小,-k 单位KB,-m 单位MB.
-s #仅显示目录的总值,单位KB。
-h #以K M G为单位显示,提高可读性
-x #以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。
-L #显示选项中所指定符号链接的源文件大小。
-S #显示个别目录的大小时,并不含其子目录的大小。
-X #<文件>指定目录或文件。
--exclude=<目录或文件> #略过指定的目录或文件。
-D #显示指定符号链接的源文件大小。
-H或--si #与-h参数相同,但是K,M,G是以1000为换算单位。
-l #重复计算硬件链接的文件。
df 命令参数:
-a #查看全部文件系统,单位默认KB
-h #使用-h选项以KB、MB、GB的单位来显示
12. 打印日志到指定文件
make -j16 > make.log 2>&1 //第一个 >表示覆盖 >> 追加
2>&1 表示不仅命令行正常的输出保存到make.log中,产生错误信息的输出也保存到make.log文件中;
参考文献
【1】https://www.cnblogs.com/edgedance/p/7044753.html
【2】https://www.cnblogs.com/ArsenalfanInECNU/p/9139327.html
【3】https://www.runoob.com/linux/linux-comm-nohup.html
【4】https://www.cnblogs.com/baby123/p/6477429.html
【5】https://blog.csdn.net/qq_19167629/article/details/80915834