目录
一、文件目录
bin 存放二进制可执行文件(ls,cat,mkdir等) boot 存放用于系统引导时使用的各种文件 dev 存放设备文件
etc 存放系统配置文件
home 存放所有用户文件的根目录
lib 存放跟文件系统中的程序运行所需要的共享库及内核模块
proc 虚拟文件系统,存放当前内存的映射
usr 存放系统应用程序,比较重要的目录/usr/local 管理员软件安装目录 var 存放运行时需要改变数据的文件
mnt 挂载目录
sbin 存储管理级别的二进制执行文件
root 超级用户主目录
opt 额外安装的可选应用程序包安装位置
二、命令
1. chmod
文件所有者(Owner)、用户组(Group)、其它用户(Other Users)
2. history N
history N 显示最近N条命令
3. df
磁盘使用情况
4. free
free 查看内存和交换空间的使用情况
free -m:显示内存单位为MB
三、vi
1. 显示出来行号。
先按shift和: 然后输入 set nu 这个时候就可以看到文件中显示 了行号
2.跳转行
shift和: 然后输入10 就会发现光标跳转到第10行了
3. 复制
按yy
4. 粘贴
p
5. 删除
连按dd,就可以删除当前行的内容
6.快速跳到文件末行
在命令模式下,通过大写的G可以快速将光 标移动到最后一行。
7.快速跳到文件首行
在命令模式下输入小写的gg即可快速跳转到第一 行。
8.显示隐藏文件
ll -a
四 组合命令
1. 取topN
sort -nr num.txt
-n的意思是按照数据的数值大小排序
倒序需要使用-r
2. ps -ef
显示系统内的所有进程 ps -ef
3. netstat -anp
看端口使用情况
4.sed
(1)sed '1a\haha' hello.txt
在第1行后插入haha
(2)sed '1i\haha' hello.txt
在第1行前插
所以说这个a其实表示是append的意思,在指定行后面追加内容 i表示是insert的意思,是在指定行的前面插入内容
好 ,这是a和i的区别。
(3)sed '$i\haha' hello.txt
我们可以通过一个特殊参数 $ 它在这里表示是最后一行的意思。在最后一行之前插入(变成倒数第二行)
(4)sed '7d' hello.txt
删除文件中多余的行,这个时候只需要使用参数d就可以搞定。
5. awk
awk的基本格式:awk [option] programe file
这里的option是一个可选项,一般在这里来指定文件中数据的字段分隔符
programe 是具体的处理逻辑
file表示我们要操作的文件
awk在处理文本数据的时候,它会自动给每行变量从1开始, $1表示是文本中的第1个数据字段,$2表示是文本中的第2个数据字段以此类推。
还有一个特殊的 $0 它代表整个文本行的内容。
[root@localhost ~]# awk '{print $1}' hello.txt hello
heaao
hello
hello
hello
hello
abc
[root@localhost ~]# awk '{print $2}' hello.txt world!
worad!
world!
world!
world!
world!
[root@localhost ~]# awk '{print $0}' hello.txt hello world!
heaao worad!
hello world!
hello world!
hello world!
hello world!
abc
只对某一列数据匹配:
awk ‘( $1 ~ /world/) {print $1 }’ hello.txt 在这里面可以通过$来指定具体是哪一列,需要把具体的对比逻 辑放到小括号里面
[root@localhost ~]# awk '($2 ~ /world/) {print $0}' hello.txt hello world!
hello world!
hello world!
hello world!
hello world!
不匹配的意思的话需要使用 !~
四、shell脚本
shell脚本的第一行内容是: #!/bin/bash 这句话相当于是一个导包语句,将shell的执行环境引入进去了。
1. for
for((i=0;i<10;i++))
do
echo $i
done
2.while
整型测试:-gt(大于)、-lt(小于)、-ge(大于等于)、-le(小于等于)、-eq(等于)、-ne(不等于)
while test 2 -gt 1
do
echo yes
sleep 1
done
3. if
if [ $flag -eq 1 ]
then
echo one
fi
flag=$1
if [ $flag -eq 1 ] then
echo "one" else
echo "not support" fi