当前位置: 首页 > news >正文

linux常用shell脚本

查看系统当前进程连接数
netstat -an | grep ESTABLISHED | wc -l
如何在/usr目录下找出大小超过10MB的文件?
find /usr -type f -size +10240k
添加一条到192.168.3.0/24的路由,网关为192.168.1.254?
route add -net 192.168.3.0/24 netmask 255.255.255.0 gw 192.168.1.254
如何在/var目录下找出90天之内未被访问过的文件?
find /var \! -atime -90
在整个目录树下查找文件“core”,如发现则无需提示直接删除它们
find / -name core -exec rm {} \;
有一普通用户想在每周日凌晨零点零分定期备份/user/backup到/tmp目录下,该用户应如何
crontab -e 0 0 * * 7 /bin/cp /user/backup /tmp
每周一下午三点将/tmp/logs目录下面的后缀为*.log的所有文件rsync同步到备份服务器192.168.1.100中同样的目录下面,crontab配置项该如何写
00 15 * * 1 rsync -avzP /tmp/logs/*.log root@192.168.1.100:/tmp/logs
找到/tmp/目录下面的所有名称以"_s1.jpg"结尾的普通文件,如果其修改日期在一天内,则将其打包到/tmp/back.tar.gz文件中
find /tmp -type f -name ".*_sj.jpg" -mtime 1|xarges tar zxf /tmp/back.tar.gz
一台Linux系统初始化环境后需要做一些什么安全工作?
  • 1、添加普通用户登陆,禁止root用户登陆,更改SSH端口号
  • 2、服务器使用密钥登陆,禁止密码登陆
  • 3、开启防火墙,关闭SElinux,根据业务需求设置相应的防火墙规则
  • 4、装fail2ban这种防止SSH暴力破击的软件
  • 5、设置只允许公司办公网出口IP能登陆服务器(看公司实际需要)
  • 6、设置nginx_waf模块防止SQL注入
  • 7、把Web服务使用www用户启动,更改网站目录的所有者和所属组为www
  • 8、修改历史命令记录的条数为10条
用一条命令显示本机eth0网卡的IP地址,不显示其它字符
#方法一:
ifconfig eth0|grep inet|awk -F ':' '{print $2}'|awk '{print $1}'
#方法二
ifconfig eth0|grep "inet addr"|awk -F '[ :]+' '{print $4}' 
#方法三:
ifconfig eth0|awk -F '[ :]+' 'NR==2 {print $4}' 
#方法四:
ifconfig eth0|sed -n '2p'|sed 's#^.*addr:##g'|sed 's# Bc.*$##g'
#方法五:
ifconfig eth0|sed -n '2p'|sed -r 's#^.*addr:(.*)  Bc.*$#\1#g'
#方法六(centos7也适用):
ip addr|grep eth0|grep inet|awk '{print $2}'|awk -F '/' '{print $1}'
用netstat命令配合其他shell命令,按照源IP统计所有到80端口的ESTABLISHED状态链接的个数,输出结果类似(第一列为连接数,第二列为IP):
[root@ ~]# netstat -an|grep ESTABLISHED
tcp        0     52 139.224.199.85:22           101.47.33.86:51763          ESTABLISHED 
tcp        0      0 139.224.199.85:45368        106.11.68.13:80             ESTABLISHED 
[root@ ~]# netstat -an|grep ESTABLISHED|grep ":80"
tcp        0      0 139.224.199.85:45368        106.11.68.13:80             ESTABLISHED
netstat -an|grep ESTABLISHED|grep ":80"|awk 'BEGIN{FS="[[:space:]:]+"}{print $4}'
统计nginx日志中访问最多的10个IP
方法1: awk '{a[$1]++}END{for(i in a)print a[i],i|"sort -k1 -nr|head -n10"}' access.log方法2: awk '{print $1}' access.log |sort |uniq -c |sort -k1 -nr |head -n10
统计日志中访问大于100次的IP
方法1: awk '{a[$1]++}END{for(i in a){if(a[i]>100)print i,a[i]}}' access.log方法2: awk '{a[$1]++;if(a[$1]>100){b[$1]++}}END{for(i in b){print i,a[i]}}' access.log

说明:方法1是将结果保存a数组后,输出时判断符合要求的IP。方法2是将结果保存a数组时,并判断符合要求的IP放到b数组,最后打印b数组的IP。

统计当前时间前一分钟的访问数
date=$(date -d '-1 minute' +%d/%b/%Y:%H:%M);awk -vdate=$date '$0~date{c++}END{print c}' access.logdate=$(date -d '-1 minute' +%d/%b/%Y:%H:%M);awk -vdate=$date '$4>="["date":00" && $4<="["date":59"{c++}END{print c}' access.loggrep -c $(date -d '-1 minute' +%d/%b/%Y:%H:%M) access.log
统计访问最多的前10个页面($request)
awk '{a[$7]++}END{for(i in a)print a[i],i|"sort -k1 -nr|head -n10"}' access.log
统计访问状态码为404的IP及出现次数
awk '{if($9~/404/)a[$1" "$9]++}END{for(i in a)print i,a[i]}' access.log
crontab的文件格式
* * * * * echo "hello" #每1分钟执行hello
3,15 * * * * myCommand #每小时第三分钟和第十五分钟执行
3,15 8-11 * * * myCommand# 在上午8点到11点的第3和第15分钟执行
3,15 8-11 */2  *  * myCommand #每隔两天的上午8点到11点的第3和第15分钟执行
30 21 * * * /etc/init.d/smb restart #每晚的21:30重启smb
0 23 * * 6 /etc/init.d/smb restart #每星期六的晚上11 : 00 pm重启smb

相关文章:

linux常用shell脚本

查看系统当前进程连接数 netstat -an | grep ESTABLISHED | wc -l 如何在/usr目录下找出大小超过10MB的文件? find /usr -type f -size 10240k 添加一条到192.168.3.0/24的路由&#xff0c;网关为192.168.1.254&#xff1f; route add -net 192.168.3.0/24 netmask 255.2…...

Rust学习笔记005:结构体 struct

在 Rust 中&#xff0c;struct 是一种用于创建自定义数据类型的关键字&#xff0c;它允许你定义和组织数据的结构。struct 可以包含多个不同类型的字段&#xff08;fields&#xff09;&#xff0c;每个字段都有一个名称和一个类型。 定义结构体 下面是一个简单的例子&#xff…...

maven中dependencyManagement标签

简介 dependencyManagement正如其名&#xff0c;用于项目依赖的统一管理。 在父项目中的pom.xml文件中加入dependencyManagement标签即可完成依赖版本的声明。在声明完成后&#xff0c;子项目&#xff08;module&#xff09;中引用相同的依赖时可以不指定version标签自动引入…...

SparkStreaming与Kafka整合

1.3 SparkStreaming与Kafka整合 1.3.1 整合简述 kafka是做消息的缓存&#xff0c;数据和业务隔离操作的消息队列&#xff0c;而sparkstreaming是一款准实时流式计算框架&#xff0c;所以二者的整合&#xff0c;是大势所趋。 ​ 二者的整合&#xff0c;有主要的两大版本。 kaf…...

openwrt源码编译

下载openwrt源码 git clone https://github.com/openwrt/chaos_calmer.git // 官方下载地址 当前我们基于15.05版本开发&#xff0c;如果开发者想用最新的OpenWRT系统&#xff0c;可以下载 https://github.com/openwrt/openwrt.git git clone https://github.com/Ying-Yun/o…...

【Leetcode Sheet】Weekly Practice 22

Leetcode Test 1349 参加考试的最大学生数(12.26) 给你一个 m * n 的矩阵 seats 表示教室中的座位分布。如果座位是坏的&#xff08;不可用&#xff09;&#xff0c;就用 # 表示&#xff1b;否则&#xff0c;用 . 表示。 学生可以看到左侧、右侧、左上、右上这四个方向上紧邻…...

ROS TF坐标变换 - 静态坐标变换

目录 一、静态坐标变换&#xff08;C实现&#xff09;二、静态坐标变换&#xff08;Python实现&#xff09; 如前文所属&#xff0c;ROS通过广播的形式告知各模块的位姿关系&#xff0c;接下来详述这一机制的代码实现。 模块间的位置关系有两种类型&#xff0c;一种是相对固定…...

香橙派5plus从ssd启动Ubuntu

官方接口图 我实际会用到的就几个接口&#xff0c;背面的话就一个M.2固态的位置&#xff1a; 其中WIFI模块的接口应该也可以插2230的固态&#xff0c;不过是pcie2.0的速度&#xff0c;背面的接口则是pcie3.0*4的速度&#xff0c;差距还是挺大的。 开始安装系统 准备工作 一张…...

JWT+Redis 实现接口 Token 校验

1、业务逻辑 有一些接口&#xff0c;需要用户登录以后才能访问&#xff0c;用户没有登录则无法访问。 因此&#xff0c;对于一些限制用户访问的接口&#xff0c;可以在请求头中增加一个校验参数&#xff0c;用于判断接口对应的用户是否登录。 而对于一些不需要登录即可访问的接…...

C语言 linux文件操作(二)

文章目录 一、获取文件长度二、追加写入三、覆盖写入四、文件创建函数creat 一、获取文件长度 通过lseek函数&#xff0c;除了操作定位文件指针&#xff0c;还可以获取到文件大小&#xff0c;注意这里是文件大小&#xff0c;单位是字节。例如在file1文件中事先写入"你好世…...

机器学习分类

1. 监督学习 监督学习指的是人们给机器一大堆标记好的数据&#xff0c;比如&#xff1a; 一大堆照片&#xff0c;标记出哪些是猫的照片&#xff0c;哪些是狗的照片 让机器自己学习归纳出算法或模型 使用该算法或模型判断出其他没有标记的照片是否是猫或狗 上述流程如下图所…...

CSS之元素转换

我想大家在写代码时有一个疑问&#xff0c;块级元素可以转换成其他元素吗&#xff1f; 让我为大家介绍一下元素转换 1.display:block(转换成块元素) display&#xff1a;block可以把我们的行内元素或者行内块元素转换成块元素 接下来让我为大家演示一下&#xff1a; <!DO…...

自激振荡电路笔记 电弧打火机

三极管相关 三极管的形象描述 二极管 简单求解&#xff08;理想&#xff09; 优先导通&#xff08;理想&#xff09; 恒压降 稳压管&#xff08;二极管plus&#xff09; 基础工作模块 理想稳压管的工作特性 晶体管之三极管(“两个二极管的组合” ) 电弧打火机电路 1.闭合开…...

Linux su 命令

Linux su&#xff08;英文全拼&#xff1a;switch user&#xff09;命令用于变更为其他使用者的身份&#xff0c;除 root 外&#xff0c;需要键入该使用者的密码。 使用权限&#xff1a;所有使用者。 语法 su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USE…...

论文阅读: AAAI 2022行人重识别方向论文-PFD_Net

本篇博客用于记录一篇行人重识别方向的论文所提出的优化方法《Pose-Guided Feature Disentangling for Occluded Person Re-identification Based on Transformer》&#xff0c;论文中提出的PDF_Net模型的backbone是采用《TransReID: Transformer-based Object Re-Identificati…...

蓝牙物联网灯控设计方案

蓝牙技术是当前应用最广泛的无线通信技术之一&#xff0c;工作在全球通用的 2.4GHZ 的ISM 频段。蓝牙的工作距离约为 100 米&#xff0c;具有一定的穿透性&#xff0c;没有方向限制。具有低成本、抗干扰能力强、传输质量高、低功耗等特点。蓝牙技术组网比较简单&#xff0c;无需…...

Codeforces Round 900 (Div. 3)(A-F)

比赛链接 : Dashboard - Codeforces Round 900 (Div. 3) - Codeforces A. How Much Does Daytona Cost? 题面 : 思路 : 在序列中只要找到k&#xff0c;就返回true ; 代码 : #include<bits/stdc.h> #define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0)…...

vue大屏-列表自动滚动vue-seamless-scroll

vue大屏-列表自动滚动vue-seamless-scroll vue-seamless-scroll的官方文档地址&#xff1a;https://chenxuan0000.github.io/vue-seamless-scroll/zh/guide/ 具体效果可到官方文档那里查看。 1、下载依赖 npm install vue-seamless-scroll --save2、使用例子 <template…...

easyx的窗口函数

文章目录 前言一、EasyX的颜色二、EasyX的坐标和设备1&#xff0c;EasyX的坐标2&#xff0c;EasyX的设备 三、窗口函数1&#xff0c;初始化窗口函数2&#xff0c;关闭绘图窗口3&#xff0c;设置窗口背景板颜色4&#xff0c;清空绘图设备 前言 easyx是针对c的图形库&#xff0c;…...

【记录】开始学习网络安全

本文持续更新学习进度 背景 在私企干了5年虚拟化、云原生相关的运维&#xff0c;学到了很多&#xff0c;但不成体系。老板是清华毕业法国留学在德勤干过&#xff0c;最后回国创业的野路子。我工作是为了更好的生活&#xff0c;我挺担心老板因为家庭变故或者炒个原油宝&#x…...

Motrix WebExtension:浏览器下载加速的终极解决方案

Motrix WebExtension&#xff1a;浏览器下载加速的终极解决方案 【免费下载链接】motrix-webextension A browser extension for the Motrix Download Manager and its forks 项目地址: https://gitcode.com/gh_mirrors/mo/motrix-webextension 在当今数字时代&#xff…...

嵌入式核心板小型化设计:从邮票孔到板对板连接器的技术演进与应用

1. 项目概述&#xff1a;当“小”成为一种刚需在嵌入式硬件开发领域&#xff0c;我们常常面临一个经典的权衡&#xff1a;性能、成本与体积。过去&#xff0c;为了追求极致的稳定性和丰富的接口&#xff0c;核心板往往做得比较大&#xff0c;通过邮票孔或高密度连接器与底板固定…...

别再死记硬背了!用这个‘水管阀门’比喻,5分钟搞懂N沟道和P沟道MOS管工作原理

水管阀门模型&#xff1a;5分钟掌握MOS管的核心逻辑 第一次接触MOS管时&#xff0c;那些载流子、耗尽层、反型层的专业术语就像一堵高墙&#xff0c;把我们对电子世界的好奇心挡在外面。但当我发现可以用厨房水龙头的原理来理解这些抽象概念时&#xff0c;一切都变得清晰起来。…...

GNN与MLIP:材料科学计算的高效新方法

1. GNN与MLIP&#xff1a;材料科学计算的新范式在材料科学领域&#xff0c;传统的第一性原理计算&#xff08;如密度泛函理论DFT&#xff09;虽然精度高&#xff0c;但计算成本极其昂贵&#xff0c;难以处理大体系或长时间尺度的模拟。图神经网络&#xff08;GNN&#xff09;与…...

OpenRGB终极指南:一个软件搞定所有RGB灯光控制,告别厂商软件束缚

OpenRGB终极指南&#xff1a;一个软件搞定所有RGB灯光控制&#xff0c;告别厂商软件束缚 【免费下载链接】OpenRGB Open source RGB lighting control that doesnt depend on manufacturer software. Supports Windows, Linux, MacOS. Mirror of https://gitlab.com/CalcProgra…...

僧伽罗文语音本地化迫在眉睫!斯里兰卡新《数字服务法》2024年10月生效前,你必须掌握的7项ElevenLabs合规配置

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;僧伽罗文语音本地化的法律动因与技术紧迫性 斯里兰卡《官方语言法》&#xff08;No. 33 of 1956&#xff09;及2023年修订的《国家数字包容战略》明确要求&#xff1a;所有面向公众的政府数字服务必须支…...

ORB-SLAM3地图保存新思路:手把手教你将.osa地图转成PCD点云(附完整代码)

ORB-SLAM3地图数据解放指南&#xff1a;从封闭格式到通用点云的全链路实践 当你在昏暗的实验室调试ORB-SLAM3运行整夜后&#xff0c;终于得到那个珍贵的.osa地图文件时&#xff0c;却发现无法用熟悉的点云工具打开分析——这种挫败感或许正是促使你阅读本文的原因。作为三维视觉…...

源代码论文分享|图书管理系统!

这份「图书管理系统」源码和论文&#xff0c;适合你在最需要“有个靠谱参考”的时候打开。 不是那种只放一堆代码、让人自己猜怎么跑的资料&#xff0c;也不是标题写得很大、内容却很空的论文模板。它更像一份已经整理好的项目包&#xff1a;有源码、有论文&#xff0c;可以直…...

书成紫微动,律定凤凰驯:对比臆想歪解,铁哥的天然契合才是真天命

———— 千年颂辞 真天命笺 ————一、两种读法&#xff1a;伪天命 真天命伪天命&#xff08;臆想歪解&#xff09;真天命&#xff08;天然契合&#xff09;脑补玄学、权谋剧本本心行道、作品证道人追诗、人凑运诗等人、运合心后天强行拟合先天无心自洽悬浮文字游戏落地世…...

EB Garamond 12:免费复古字体完整指南,如何优雅应用于网页和印刷设计

EB Garamond 12&#xff1a;免费复古字体完整指南&#xff0c;如何优雅应用于网页和印刷设计 【免费下载链接】EBGaramond12 项目地址: https://gitcode.com/gh_mirrors/eb/EBGaramond12 EB Garamond 12是一款基于16世纪经典设计的开源复古字体&#xff0c;为设计师和开…...