5个 Linux 小技巧

发布于 2021-07-05 13:06:59 字数 1597 浏览 1018 评论 0

一、查看哪些文件中包含指定字符串

find . |xargs grep -n --color "宽"

-n:显示行号
--color:将指定字符串用特殊颜色标识

二、Vim 自动添加注释及智能换行

# vi ~/.vimrc 添加如下内容:

function AddTitle()
call setline(1,"#!/bin/bash")
call append(1,"#====================================================")
call append(2,"# Author: yaok")
call append(3,"# Create Date: ". strftime("%Y-%m-%d %H:%M:%S"))
call append(4,"# Description: ")
call append(5,"#====================================================")
endf
map <F4> :call AddTitle()<cr>

三、iptables 网站跳转

先开启路由转发:
echo "1" > /proc/sys/net/ipv4/ip_forward  #临时生效

内网访问外网(SNAT):
iptables –t nat -A POSTROUTING -s [内网IP或网段] -j SNAT --to [公网IP]
#内网服务器要指向防火墙内网IP为网关

公网访问内网(DNAT)(公网端口映射内网端口):
iptables –t nat -A PREROUTING -d [对外IP] -p tcp --dport [对外端口] -j DNAT --to [内网IP:内网端口]
#内网服务器要配置防火墙内网IP为网关,否则数据包回不来。另外,这里不用配置SNAT,因为系统服务会根据数据包来源再返回去。

iptables将本机80端口转发到本地8080端口
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080

四、find 命令查找文件并复制到 /opt 目录

方法1:
find /etc -name httpd.conf -exec cp -rf {} /opt/ \;:    
#-exec执行后面命令,{}代表前面输出的结果,\;结束命令

方法2:
find /etc -name httpd.conf |xargs -i cp {} /opt     
#-i表示输出的结果由{}代替

五、列出 nginx 日志访问最多的 10 个IP

方法1:
awk '{print $1}' access.log |sort |uniq -c|sort -nr |head -n 10
sort :排序
uniq -c:合并重复行,并记录重复次数
sort -nr :按照数字进行降序排序

方法2:
awk '{a[$1]++}END{for(v in a)print v,a[v] |"sort -k2 -nr |head -10"}' access.log

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

0 文章
0 评论
84960 人气
更多

推荐作者

qq_Yqvrrd

文章 0 评论 0

2503248646

文章 0 评论 0

浮生未歇

文章 0 评论 0

养猫人

文章 0 评论 0

第七度阳光i

文章 0 评论 0

新雨望断虹

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文