3.linux基础(下)
Posted java and go
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了3.linux基础(下)相关的知识,希望对你有一定的参考价值。
3 linux基础(下)
1.数据操作
1.1 grep 命令:筛选数据
-
grep 全局搜索一个正则表达式并打印 -
文件中查找关键字,并显示关键字所在的行
-
grep简单用法(区分大小写) -
grep text file -
text 搜索的内容,file 搜索的文件 -
text 中有空格需要加双引号 -
例如 grep path /etc/profile -
参数 -
-i参数:忽略大小写(ignore) -
-n :显示行号 -
-v:只显示文本不在的行(invert) -
-r:递归查找 file换成目录 == rgrep -
配合正则
-
-E参数:使用正则表达式== egrep -
-
正则参数 -
加号前面的元素必须出现1次或以上 -
grep -E [0-4] /etc/profile
-
grep -E [a-zA-Z] /etc/profile
-
. 匹配除"\n"以外的单个字符 -
^ 行首 grep -E ^path /etc/profile
-
$ 行尾 -
[] 中括号中的任意字符 -
?问号前面的元素出现0次或1次 -
* 星号前面的元素出现0,1或多次 -
-
| 逻辑或 -
() 表达式的分组
1.2 sort 为文件排序(不区分大小写)
-
sort 文件名 对文件中的内容排序 -
-o 写入新文件 ouput -
sort -o name_sort.txt name.txt
-
-r 倒叙排列 -
-R 随机排序 -
-n 对数字排序 按1-9排序 -
sort -n num.txt
1.3 wc命令:文件的统计
-
wc 可统计单词数,行数,字符数,字节数 -
wc +文件名 wc name.txt
10 8 43 name.txt
行数 单词数 字节数 文件名 -
-l 统计行数 -
-w 统计单词数 -
-c 统计字节数 -
-m 统计字符数
1.4 uniq命令:删除文件中的重复内容
-
只能把连续的重复行写到一行 -
把去重文件保存 uniq repeat.txt rep.text
-
-c参数:统计重复的行数 uniq -c repeat.txt
-
-d参数:显示重复的行
1.5 cut命令 剪切文件的一部分内容
-
-c 根据字符数来剪切 -
cut -c 2-4 name.txt
-
-d :分隔符 -
-f:区域
[thomas@bhz111 ~]$ cut -d , -f 1 notes.csv
mark
mata
lili
hahah
[thomas@bhz111 ~]$ cut -d , -f 1,3 notes.csv
mark,很不错
mata,很差
lili,快及格了
hahah,进步很大
2.流 管道 重定向
2.1 重定向
-
把本来要显示到终端的命令输送到别的地方 -
重定向到文件或另外一个命令的输入
-
重定向符号输出 -
cut -d , -f 1,3 notes.csv >> student.txt
-
>重定向到新的文件 cut -d , -f 1,3 notes.csv > student.txt
-
>注意事项,文件不存在新建,存在就覆盖 -
/dev/null 黑洞文件 -
> 重定向到文件 -
>> 追加到文件夹末尾 -
stdin,stdout,stderr [thomas@bhz111 redirect]$ cat result.txt
cat: no_such_file.csv: 没有那个文件或目录 -
cat no_such_file.csv > result.txt 2>&1
-
cat no_such_file.csv >> result.txt 2>&1
-
2>>标准错误输出重定向文件末尾 -
2>&1 合并输出 -
终端接受键盘输入的命令,会产生两种输出 -
标准输出:stdout。指终端输出的信息(不包括错误信息) -
标准错误输出:stderr。指终端输出的错误信息。 -
2> 标准错误输出重定向 -
<,<<: 从文件或键盘读取 -
将命令的输入重定向为键盘输入 -
sort -n << END
-
wc -w <<end
-
用于指令命令的输入 -
cat < notes.csv 打印 -
< : 从文件中读取
-
<<
[thomas@bhz111 redirect]$ sort -n << END
> 12
> 234
> 111
> 444
> 5567
> 88
> END
12
88
111
234
444
5567[thomas@bhz111 redirect]$ wc -w <<end
> asd
> asd
> end
2
2.2 管道 |
-
把两个命令连起来使用,一个命令的输出作为另外一个命令的输入 -
cut -d , -f 1 notes.csv | sort > result.txt
3. 进程与系统监控
3.1 w 都有谁,在做什么
-
w 都有谁,在做什么 -
uptime 负载 -
who
3.2 ps和top 列出运行的程序
3.2.1 ps 进程的静态列表、
-
ps -
PID 进程号 -
TTY 进程所在的终端 -
TIME 进程运行的时间 -
CMD 产生进程的命令 -
参数 [thomas@bhz111 ~]$ ps -u thomas
PID TTY TIME CMD
2014 pts/0 00:00:00 bash
2075 pts/0 00:00:00 bash
2142 pts/0 00:00:00 bash
2220 pts/0 00:00:00 bash
44814 pts/0 00:00:00 bash
94504 pts/0 00:00:00 ps -
--sort 排序 -
据cpu排序 ps -aux --sort -pcpu |less
-
据内存 ps -aux --sort -pmem |less
-
综合 ps -aux --sort -pcpu,+pmem|head
-
-aux 通过cpu和内存使用过 -
pstree 以树形结构显示 -
UID 用户名 -
PID 进程号 -
PPID 父进程 -
ps-ef | less -
-ef 列出所有进程 -
-efh 按乔木状 -
-u 加用户
3.3 top:进程的动态列表
-
快捷键 -
q 退出 -
h 帮助 -
B 大写B加粗某些信息 -
f 添加或删除某些列 -
u 按用户过滤 -
k 结束某个进程 -
s 改变刷新页面的时间
3.4 glances软件
-
安装
-yum install epel* -y
yum install python-pip python-devel -y
yum install glances -y
-
glances
3.5 htop软件
yum install -y htop
-
htop
3.5 ctrl+c 或 kill
-
ctrl+c
-
停止终端中正在运行的程序
-
kill命令:结束一个进程
-
kill + 进程号1 进行号2 -
kill -9 进程号1 强制结束 -
killall+程序名 结束多个进程 -
killall find
3.6 halt 和 reboot
-
halt 关闭系统(root) -
reboot 重启系统(root) -
poweroff关机
4. 后台进程 & nohup
4.1 & nohup 后台运行
-
& 后台运行 -
cp file.txt file_c.txt &
-
nohup 使进程和终端分离 -
nohup cp file.txt file_c.txt &
-
输出至nohup.out中
4.2 Ctrl+z 转到后台并停止进程
4.3 bg 使进程转到后台
-
bg 1 指定标号的进程
5. 压缩 解压缩 tar
5.1 tar
-
tar 归档 -
c 创建 -
v 显示操作细节 -
f 指定归档文件 -
-cvf 创建一个tar归档 tar -cvf compression.tar compression/
-
tf:显示归档里的内容,并不解开归档 -
-rvf 追加文件到归档 -
xvf 解开归档 -
tar 压缩
-
gzip compression.tar 压缩 -
guzip compression.tar.gz 解压缩 -
==tar -zcvf 归档并压缩== -
==tar -zxvf 解压缩与归档== -
zip/unzip 压缩解压缩zip文件
-
查看压缩文件 zcat
以上是关于3.linux基础(下)的主要内容,如果未能解决你的问题,请参考以下文章