一、文件操作及vim 網(wǎng)卡
filename 清空文件
tail -f 文件 監(jiān)控這個文件是否有新日志進來
head -n 8 文件 前八行
vim
G最后一行
G跳轉(zhuǎn)第#行
$ 行尾
u 撤銷前一次的編輯操作
3u 撤銷前三次
查找/字符 n向下查找 N向上查找
/<字符>精確查找這個字符
:1,$ s/root/secroot/g 從第一行到最后一行 把root替換成secroot
:set nu 顯示行號
set nonu 取消行號
set ic 忽略大小寫
網(wǎng)卡
ifconfig eth0 up 啟動
vi /etc/sysconfig/network-scripts/ifcfg-eth0
BOOTPROTO=static
IPADDR=
NETMASK=
GATEWAY=
service network restart
二、cd rm mkdir cp cat
echoo $0 bash版本
bash --version shell版本
cat /etc/shell 查看有哪些shell'
cd 改變目錄
。 當前目錄
。。上一目錄
cd - 回到上一次操作的目錄
pwd 當先絕對路徑
cd ~回到家目錄
pwd -p 真實路徑
mkdir 創(chuàng)建空目錄
mkdir -p 文件/文件/文件 創(chuàng)建多個文件
rmdir只 刪除空目錄 用的不多
rm 直接刪
rm -r 遞歸刪除
rm -f 全部刪 慎用
cp 本機拷貝
scp 遠程拷貝scp 遠程名字@ip地址:文件位置 需要拷貝的本機位置
mv 移動目錄
cat -n 行數(shù)
cat -b 除空白行之外的行數(shù)
cat -E 將結(jié)尾的$ 顯示出來
cat -v 列出看不出來的特殊字符
cat 1.txt | grep all
cat 1.txt | grep -w "root" 精確查找root單詞所在的那一行
cat 1.txt | grep -w --color=auto "root" 使查找的root醒目
cat 1.txt | grep -v "root" 除了root,其他都顯示
cat 1.txt | grep -c "root" 顯示有root的行數(shù)
cat 1.txt | grep -b "root" 顯示root的行數(shù)及內(nèi)容
cat 1.txt | grep -i "root" 忽略大小寫
watch -n 1 cat t.txt 一秒執(zhí)行一次cat
:>1.txt 清空文件
三、group awk find
grep "root" -A 2 找出root及下面兩行
grep "root" -B 2 找出root及上兩行
grep "root" -C 2 找出root及上下兩行
awk -F ':' '{print $1}' /etc/passwd 以:為分隔符查找第一個
awk -F ':' '{print $1"\t"$7}' /etc/passwd 查找第一個第七個
awk -F ':' '/^root/ {printf $1} {printf "\t"} /^root1/ {print $2}'以:為分隔符,root為開頭
find . mtime -2 -type f - print 查找兩天內(nèi)被更改過的文件
find . mtime +2 -type f - print 查找兩天前被更改過的文件
find . atime -2 -type f - print 查找兩天被訪問的文件
find . atime +2 -type f - print 查找兩天前被訪問的文件
find . ctime -2 -type f - print 查找兩天內(nèi)狀態(tài)變的的文件
find . ctime +2 -type f - print 查找兩天前狀態(tài)變的文件
四、iptables
iptables 包過濾 狀態(tài)檢測
表:filter、net、mangle、raw
filter表的三個鏈:INPUT、OUTPUT、FORWARD
iptables -L
查看filter表中的三條鏈
語法格式
iptables [-t table] 命令選項 [鏈名] [條件] [-j 動作] (不加表名默認操作filter表)
命令選項
-A 給某鏈追加一條規(guī)則
-D 給某鏈刪除某條規(guī)則
-I 給某鏈插入規(guī)則,默認第一行
-R 給某鏈修改規(guī)則
-L 列出指定鏈中的所有規(guī)則
-F 給某鏈清空
-P 設(shè)置指定鏈的默認規(guī)則(ACCEPT,DROP等)
-s 指定源地址
-p 指定協(xié)議
-d 指定目的地址
-m multiport指定多端口
xshell連接狀態(tài)下
iptables -P INPUT DROP 危險操作!(將INPUT鏈的默認規(guī)則設(shè)為DROP)
連接會馬上斷開
iptables -P INPUT ACCEPT(將INPUT鏈的默認規(guī)則設(shè)為ACCEPT)
iptables [-t filter] -A INPUT -p icmp -j ACCEPT
禁止所有ping(icmp包)
可以看到ping不通了
iptables [-t filter] -A INPUT -p ssh --dport 22 -j ACCEPT
iptables -D INPUT -p tcp --dport 22 -j ACCEPT 刪除鏈中某條規(guī)則
iptables -A INPUT -是192.168.2.0/24 -p tcp -m multiport --dport 22,80 -j DROP
iptables -P INPUT DROP
之后發(fā)現(xiàn)不能上網(wǎng)了
iptables -A OUTPUT -p tcp -m multiport --dport 80,443,53 -j ACCEPT 在OUTPUT鏈中添加允許的規(guī)則
發(fā)現(xiàn)還是不能解析百度,原來是因為dns是udp端口的,不是tcp
iptables -D OUTPUT -p tcp -m multiport --dport 80,53,443 -j ACCEPT
iptables -A OUTPUT -p tcp -m multiport --dport 80,443 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT
service iptables save