linux命令不常用就会忘记,所以开个帖子记录下
网络:
iptables | firewall
Ubuntu以及CentOS6等采用这个配置方式
# 关闭所有端口
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP
# 查看当前端口
iptables -Ln
# 保存服务
service iptables save
# 也可以直接编辑 /etc/sysconfig/iptables
iptables -A INPUT -p tcp --dport 22 -j ACCEPT #或者采用DROP丢弃(相当于关闭端口)
iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT
# CentOS7
[root@centos7 ~]# firewall-cmd --permanent --add-port=100/tcp
[root@centos7 ~]# firewall-cmd --reload
# 最粗暴的方式
service firewall stop
还有是
- netstat -anop 显示网络端口监听状态
管道
主要是三个操作符 | (管道链接)、|| (不通过执行)、和&&(通过执行)
常用操作
- ps -aux|grep
- kill -9 pid
- watch -n $GAP command
- bash a.sh
- ll (等于ls -al)
- chmod 555
- chown 文件所有者
- df -h
- du -h --max-depth=3
- reboot/shutdown
- mv/scp/cp/rm (如果要处理特殊符号的文件需要转义!例如~、$、\等)
- 三大件*
- grep
- sed
-
awk
awk(关键字:分析&处理) 一行一行的分析处理 awk '条件类型1{动作1}条件类型2{动作2}' filename, awk 也可以读取来自前一个指令的 standard input
相对于sed常常用于一整行处理, awk则比较倾向于一行当中分成数个"字段"(区域)来处理, 默认的分隔符是空格键或tab键
例如:
last -n 5 | awk '{print $1 "\t" $3}' 这里大括号内$1"\t"$3 之间不加空格也可以, 不过最好还是加上个空格, 另外注意"\t"是有双引号的, 因为本身这些内容都在单引号内
$0 代表整行 $1代表第一个区域, 依此类推
awk的处理流程是:
1. 读第一行, 将第一行资料填入变量 $0, $1... 等变量中
2. 依据条件限制, 执行动作
3. 接下来执行下一行
所以, AWK一次处理是一行, 而一次中处理的最小单位是一个区域