Linux常用命令
Posted 菜鸟2021
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux常用命令相关的知识,希望对你有一定的参考价值。
1.常用命令
ps -ef | grep collect 查看当前进程
pwdx 3833(进程id) 查看当前进程的目录
kill -9 3833(进程id) 杀死当前进程
sh start.sh 重启进程
tailf nohup.out 动态查看日志
mkdir 目录名 创建目录
rmdir 目录名 删除目录
touch 文件名 创建文件
rm 文件名 删除文件
浏览文件
cat用于显示文件的内容
more一般用于要显示的内容会超过一个画面长度的情况。
- 按空格键显示下一个画面。
- 回车显示下一行内容。
- 按 q 键退出查看。
tail命令是在实际使用过程中使用非常多的一个命令,它的功能是:用于显示文件后几行的内容。
用法:
tail -10 /etc/passwd 查看后10行数据
tail -f catalina.log 动态查看日志(*****)
ctrl+c 结束查看
2.常用快捷键
1、tab //命令或路径等的补全键,linux用的最多的一个快捷键 ⭐️
2、ctrl+a //光标迅速回到行首 ⭐️
3、ctrl+e //光标迅速回到行尾 ⭐️
4、ctrl+f //光标向右移动一个字符
5、ctrl+b //光标向左移动一个字符
6、ctrl+insert //复制命令行内容(mac系统不能使用)
7、shift+insert //粘贴命令行内容(mac系统不能使用)
8、ctrl+k //剪切(删除)光标处到行尾的所有字符 ⭐️
9、ctrl+u //剪切(删除)光标处到行首的所有字符 ⭐️
10、ctrl+w //剪切(删除)光标前的一个字符
11、ctrl+y //粘贴 ctrl+k、ctrl+u、ctrl+w删除的字符 ⭐️
12、ctrl+c //中断终端正在执行的任务并开启一个新的一行 ⭐️
13、ctrl+h //删除光标前的一个字符(相当于退格键)
14、ctrl+d //退出当前shell命令行,如果是切换过来的用户,则执行这个命令回退到原用户 ⭐️
15、ctrl+r //搜索命令行使用过的历史命令记录 ⭐️
16、ctrl+g //从ctrl+r的搜索历史命令模式中退出
17、ctrl+l //清楚屏幕所有的内容,并开启一个新的一行 ⭐️
18、ctrl+s //锁定终端,使之任何人无法输入
19、ctrl+q //解锁ctrl+s的锁定状态
20、ctrl+z //暂停在终端运行的任务,使用"fg"命令可以使暂停恢复 ⭐️
21、!! //执行上一条命令 ⭐️
22、!pw //这是一个例子,是执行以pw开头的命令,这里的pw可以换成任何已经执行过的字符 ⭐️
23、!pw:p //这是一个例子,是仅打印以pw开头的命令,但不执行,最后的那个“p”是命令固定字符 ⭐️
24、!num //执行历史命令列表的第num条命令,num代指任何数字(前提是历史命令里必须存在)⭐️
25、!$ //代指上一条命令的最后一个参数,该命令常用于shell脚本中 ⭐️
26、esc+. //注意那个".“ 意思是获取上一条命令的(以空格为分隔符)最后的部分 ⭐️
27、esc+b //移动到当前单词的开头
28、esc+f //移动到当前单词的结尾
echo -e 命令详解
echo在php中是输入那么在linux中是不是也是输入呢,当然echo在linux也是输入不过它的用法比php强大多了可以带参数及一些东西,下面我们来看一篇关于linux echo命令介绍及-n、-e参数详解吧,具体如下所示。
echo命令用于在shell中打印shell变量的值,或者直接输出指定的字符串。linux的echo命令,在shell编程中极为常用, 在终端下打印变量value的时候也是常常用到的,因此有必要了解下echo的用法echo命令的功能是在显示器上显示一段文字,一般起到一个提示的作用。
语法
echo(选项)(参数)选项
-e:激活转义字符。使用-e选项时,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:
•\\a 发出警告声;
•\\b 删除前一个字符;
•\\c 最后不加上换行符号;
•\\f 换行但光标仍旧停留在原来的位置;
•\\n 换行且光标移至行首;
•\\r 光标移至行首,但不换行;
•\\t 插入tab;
•\\v 与\\f相同;
•\\ 插入\\字符;
•\\nnn 插入nnn(八进制)所代表的ASCII字符;
参数
变量:指定要打印的变量。
实例
用echo命令打印带有色彩的文字:
文字色:
echo -e "\\e[1;31mThis is red text\\e[0m"
This is red text•\\e[1;31m 将颜色设置为红色
•\\e[0m 将颜色重新置回
颜色码:重置=0,黑色=30,红色=31,绿色=32,黄色=33,蓝色=34,洋红=35,青色=36,白色=37
背景色:
echo -e "\\e[1;42mGreed Background\\e[0m"
Greed Background颜色码:重置=0,黑色=40,红色=41,绿色=42,黄色=43,蓝色=44,洋红=45,青色=46,白色=47
文字闪动:
echo -e "\\033[37;31;5mmysql Server Stop...\\033[39;49;0m"
红色数字处还有其他数字参数:0 关闭所有属性、1 设置高亮度(加粗)、4 下划线、5 闪烁、7 反显、8 消隐
echo -n 不换行输出
$echo -n "123"
$echo "456"
最终输出
123456
而不是
123
456
echo -e 处理特殊字符
若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:
\\a 发出警告声;
\\b 删除前一个字符;
\\c 最后不加上换行符号;
\\f 换行但光标仍旧停留在原来的位置;
\\n 换行且光标移至行首;
\\r 光标移至行首,但不换行;
\\t 插入tab;
\\v 与\\f相同;
\\ 插入\\字符;
\\nnn 插入nnn(八进制)所代表的ASCII字符;
下面举例说明一下:
$echo -e "a\\bdddd" //前面的a会被擦除
dddd
$echo -e "a\\adddd" //输出同时会发出报警声音
adddd
$echo -e "a\\ndddd" //自动换行
a
dddd
我们在使用linux的过程中,经常会去下载安装包,下载时候的那个进度提示是不是比较好玩,下载进度的百分比在不断变化,利用echo -e和-n参数我们也可以实现这个效果了。
- echo -e "\\033[背景颜色;字体颜色m字符串\\033[0m
格式: echo -e "\\033[字背景颜色;字体颜色m字符串\\033[0m"
例如:
echo -e "\\033[41;36m something here \\033[0m"
其中41的位置代表底色, 36的位置是代表字的颜色
那些ascii code 是对颜色调用的始末.
\\033[ ; m …… \\033[0m
字背景颜色范围:40----49
40:黑
41:深红
42:绿
43:黄色
44:蓝色
45:紫色
46:深绿
47:白色
字颜色:30-----------39
30:黑
31:红
32:绿
33:黄
34:蓝色
35:紫色
36:深绿
37:白色
===============================================ANSI控制码的说明
\\33[0m 关闭所有属性
\\33[1m 设置高亮度
\\33[4m 下划线
\\33[5m 闪烁
\\33[7m 反显
\\33[8m 消隐
\\33[30m -- \\33[37m 设置前景色
\\33[40m -- \\33[47m 设置背景色
\\33[nA 光标上移n行
\\33[nB 光标下移n行
\\33[nC 光标右移n行
\\33[nD 光标左移n行
\\33[y;xH设置光标位置
\\33[2J 清屏
\\33[K 清除从光标到行尾的内容
\\33[s 保存光标位置
\\33[u 恢复光标位置
\\33[?25l 隐藏光标
\\33[?25h 显示光标
Linux查看CPU、内存使用情况常用命令
1.top
-
第一行、任务队列信息 :
-
top - 10:41:25 up 94 days, 21:39, 5 users, load average: 0.39, 0.39, 0.36
与uptime命令执行结果相同。 ◦ 15:29:24:系统当前时间 ◦ up 3 days, 8:04:主机已运行时间 ◦ 5 users:用户连接数(不是用户数,who命令) ◦ load average: 0.09, 0.12, 0.19:系统平均负载,统计最近1,5,15分钟的系统平均负载 • 补充:uptime -V可查询版本
-
第二行:进程信息 :
-
Tasks: 548 total, 1 running, 387 sleeping, 0 stopped, 0 zombie
• Tasks: 287 total:进程总数 • 2 running:正在运行的进程数 • 285 sleeping:睡眠的进程数 • 0 stopped:停止的进程数 • 0 zombie:僵尸进程数
-
第三行:CPU信息:
-
%Cpu(s): 1.5 us, 1.0 sy, 0.0 ni, 97.5 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
• 1.5 us:用户空间所占CPU百分比 • 0.9 sy:内核空间占用CPU百分比 • 0.0 ni:用户进程空间内改变过优先级的进程占用CPU百分比 • 97.5 id:空闲CPU百分比 • 0.2 wa:等待输入输出的CPU时间百分比 • 0.0 hi:硬件CPU中断占用百分比 • 0.0 si:软中断占用百分比 • 0.0 st:虚拟机占用百分比
-
第四行:内存信息
-
KiB Mem : 32662844 total, 247632 free, 2757052 used, 29658160 buff/cache
(与第五行的信息类似与free命令) • 8053444 total:物理内存总量 • 7779224 used:已使用的内存总量 • 274220 free:空闲的内存总量(free+used=total) • 359212 buffers:用作内核缓存的内存量
-
第五行:swap信息:
-
KiB Swap: 17653752 total, 17653752 free, 0 used. 19781068 avail Mem
• 17653752 total:交换分区总量 • 0 used:已使用的交换分区总量 • 17653752 free:空闲交换区总量 • 4358088 cached Mem:缓冲的交换区总量,内存中的内容被换出到交换区,然后又被换入到内存,但是使用过的交换区没有被覆盖,交换区的这些内容已存在于内存中的交换区的大小,相应的内存再次被换出时可不必再对交换区写入。
• PID:进程id
• USER:进程所有者的用户名
• PR:优先级
• NI:nice值。负值表示高优先级,正值表示低优先级
• VIRT:进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES
• RES:进程使用的物理内存的大小
• SHR:进程使用的共享内
• S:进程状态(D=不可中断的睡眠状态,R=运行,S=睡眠,T=跟踪/停止,Z=僵尸进程)
• %CPU:上次更新到现在的CPU时间占用百分比
• %MEM:进程使用的物理内存百分比
• TIME+:进程所使用的CPU时间总计,单位1/100秒
原文链接:https://blog.csdn.net/u012954706/article/details/81134134
2.mpstat 、sar
查看cpu整体性能命令
mpstat -u 1 1
表示每秒采集一次 ; 第一个“1”代表时间,第二个“1”代表次数
mpstat -u 1 1 | grep Average | awk \'{print $12}\'
表示取到的cpu空闲利用率
Linux部署项目常用命令
参考技术A (1)java -jar 包名 当窗口关闭或按Ctrl+c则程序终止(2)java -jar 包名 & 当窗口关闭则程序终止
(3)nohup java -jar 包名 & 程序不因窗口关闭或按Ctrl+c而终止,生成默认日志文件
(4)nohup java -jar 包名 >日志名 & 在(3)的基础上自定义生成日志
(1)tail n 日志名 n代表查看日志的行数
例子:tail 10 nohup.out 查看正数10行的日志
例子:tail -10 nohup.out 查看倒数10行的日志
(2)tail -f nohup.out 实时查看日志
(1)ps -ef | grep java 查看进程
(2)netstat -tunlp 端口号查看
kill -9 pid
例如查找文件名为nginx的文件 find / -name nginx
(1)找到并进入nginx文件夹下的sbin文件夹
(2)执行 ./nginx -s reload
free 命令 默认以kb为计算单位,可以在后面通过添加 -b ,-m ,-g ,-h等修改计算单位
例如 free -h以较友好的方式展示
按理来说total = used + free ,但是这边不晓得为什么free只剩了123M,有答案了再来补上
top 命令
top 行依次为系统时间、距上次重启系统时间、登入用户数、平均负载
tasks 行为进程任务情况
cpu 行为cpu的使用情况
暂时没了,想起来再补
以上是关于Linux常用命令的主要内容,如果未能解决你的问题,请参考以下文章
markdown [Docker] Docker片段列表和命令#linux #docker #snippets
Android 逆向Linux 文件权限 ( Linux 权限简介 | 系统权限 | 用户权限 | 匿名用户权限 | 读 | 写 | 执行 | 更改组 | 更改用户 | 粘滞 )(代码片段