Linux重点思考(下)--shell脚本使用以及内核开发

Linux重点思考(下)--shell脚本使用和组合拳

  • shell脚本的基础算法
    • shell脚本写1+2+3...n的值,说思路
    • Shell 脚本用于执行服务器性能测试的死循环
    • Shell 脚本备份和定时清理垃圾文件
  • shell脚本的内核开发
    • 正向映射
    • 反向映射

shell脚本的基础算法

shell脚本写1+2+3…n的值,说思路

在这里插入图片描述

#!/bin/bash# 接收用户输入
read -p "请输入一个整数 n: " n# 初始化累加和
sum=0# 循环累加
for ((i=1; i<=n; i++))
dosum=$((sum + i))
done# 输出结果
echo "1+2+3+...+$n 的值为:$sum"

Shell 脚本用于执行服务器性能测试的死循环

在这里插入图片描述

#!/bin/bashwhile true
do# 在这里编写你的性能测试命令# 例如,使用 ab 命令对服务器进行压力测试ab -n 1000 -c 100 http://example.com/# 可以在每次循环之间添加一些延时,以控制循环速度sleep 10
done

Shell 脚本备份和定时清理垃圾文件

  • 备份文件

确定备份目录: 首先,确定你要备份的文件或目录,以及备份存储的位置。例如,你可能希望备份/home/user/documents目录中的所有文件。
编写备份脚本: 创建一个Shell脚本,用来执行备份操作。在脚本中,你需要使用rsync或cp命令来复制文件到备份目录。确保在备份目录中创建适当的目录结构,并给备份文件加上时间戳以区分不同的备份版本。

#!/bin/bash# 源目录
SOURCE_DIR="/home/user/documents"# 备份目录
BACKUP_DIR="/path/to/backup"# 备份文件名,加上当前日期时间戳
BACKUP_FILE="backup_$(date +'%Y%m%d_%H%M%S').tar.gz"# 执行备份
tar -czvf "$BACKUP_DIR/$BACKUP_FILE" "$SOURCE_DIR"
  • 设置定时任务

0 0 * * * /path/to/backup_script.sh

  • 清理垃圾文件

确定清理规则: 确定哪些文件被认为是垃圾文件,以及它们应该在何时被清理。可能的例子包括临时文件、日志文件等。
编写清理脚本: 创建另一个Shell脚本,用于清理垃圾文件。在脚本中,列出需要清理的文件和目录,并使用rm命令或类似的工具来删除它们。

#!/bin/bash# 清理日志文件
LOG_DIR="/var/log"
find "$LOG_DIR" -type f -name "*.log" -mtime +7 -exec rm -f {} \;# 清理临时文件
TMP_DIR="/tmp"
rm -rf "$TMP_DIR"/*

shell脚本的内核开发

正向映射

在虚拟内存系统中,正向映射指的是从虚拟地址到物理地址的映射过程。当程序访问虚拟内存中的某个地址时,操作系统通过页表等数据结构将虚拟地址映射到物理内存中的实际地址,从而使得程序能够正确访问内存。

反向映射

反向映射则是与正向映射相反的过程。在某些情况下,内核需要根据物理地址找到对应的虚拟地址。这在诊断和调试中可能很有用,例如跟踪某个物理地址是哪个进程的虚拟地址。为此,操作系统可能会维护一种反向映射表,以便根据物理地址快速找到对应的虚拟地址。

推荐文章:
链接: https://blog.csdn.net/u012489236/article/details/114734823

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/782581.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

单点登录原理与实现方案探究(二)

本系列文章简介&#xff1a; 本系列文章将深入探究Java中的单点登录原理与实现方案。首先&#xff0c;我们将介绍单点登录的基本原理&#xff0c;探讨其在多应用环境下的工作流程。然后&#xff0c;我们将详细讨论目前流行的三种单点登录实现方案我们将分析每种实现方案的优缺点…

WARNING: No output specified with docker-container driver

这个警告信息是说 docker build 出现的&#xff0c;指出你没有指定任何输出目的地&#xff0c;因此构建后的镜像不会被持久保存&#xff0c;只会存留在构建缓存中。以至于后面 docker tag 命令会找不到镜像&#xff0c;从而导致build 和push流程失败. 两种解决的做法&#xff…

JDBC远程连接mysql报错:NotBefore: Sat Mar 30 16:37:41 UTC 2024

虚拟机docker已经部署了mysql&#xff0c;用navicat可以直接远程连接&#xff0c;datagrip却不能&#xff0c;如图&#xff1a; 需要在最后加上 ?useSSLfalse , 如&#xff1a;jdbc:mysql://192.168.30.128:3306?useSSLfalse navicat不用加的原因是没有使用jdbc连接&#x…

java数据结构与算法刷题-----LeetCode1091. 二进制矩阵中的最短路径

java数据结构与算法刷题目录&#xff08;剑指Offer、LeetCode、ACM&#xff09;-----主目录-----持续更新(进不去说明我没写完)&#xff1a;https://blog.csdn.net/grd_java/article/details/123063846 文章目录 广度优先双分裂蛇 广度优先双分裂蛇 双分裂蛇&#xff1a;是求二…

Linux 学习之路--工具篇--yum

前面介绍了权限有关的内容&#xff0c;这里继续介绍有关Linux里面常用的工具之一yum 目录 一、简单介绍 <1> 源代码安装 <2>rpm 包安装 <3>yum / apt-get(ubuntu) 安装 二、简单使用 <1>安装包介绍 <2> yum 的基本指令 -- install <…

C++:数据类型—布尔(12)

布尔类型代表就是真和假&#xff08;bool&#xff09; 真就是1&#xff08;true&#xff09; 假就是0&#xff08;false&#xff09; 也可以任务非0即为真 bool 直占用1个字节大小 语法&#xff1a;bool 变量名 (true | false&#xff09; 提示&#xff1a;bool在后期判断也是…

2024年150道高频Java面试题(十)

19. 解释一下 Java 中的封装、继承和多态。 封装、继承和多态是面向对象编程&#xff08;OOP&#xff09;的三个核心概念&#xff0c;在Java中得到了广泛应用。 封装&#xff1a; 概念&#xff1a;封装是指隐藏一个对象的内部细节&#xff0c;仅对外暴露需要公开的部分。这可以…

Capture One Pro 23中文---颠覆性的图像编辑与色彩配置

Capture One Pro 23是一款功能强大且专业的RAW图像编辑处理软件。它拥有全球领先的色彩管理技术和精细的图像编辑工具&#xff0c;可以对图片进行多种精细调整&#xff0c;包括曝光、色温、对比度、锐度等&#xff0c;以满足用户特定的后期处理需求。此外&#xff0c;Capture O…

第二百三十一回

文章目录 1. 概念介绍2. 符号和平台2.1 符号2.2 平台 3. 问题与解决3.1 常见问题3.2 解决方法 4.内容总结 我们在上一章回中介绍了"关于intl报错的问题"相关的内容&#xff0c;本章回中将介绍不同平台上换行的问题.闲话休提&#xff0c;让我们一起Talk Flutter吧。 1…

Excel函数-总

目录 1.概述 2.数组公式 2.1.数组的类别 2.2.数组的构成元素 2.3.数组运算时需要用到的运算符 3.数学与三角函数 3.1.RANDBETWEEN 3.2.ABS 3.3.MOD 3.4.PI ​​​​​​​3.5.PRODUCT ​​​​​​​3.6.RADIANS ​​​​​​​3.7.DEGREES ​​​​​​​3.8.POWER ​​​​​…

FastAPI+React全栈开发17 让我们创建一个React应用

Chapter04 Setting Up a React Workflow 17 Let’s Create a React App FastAPIReact全栈开发17 让我们创建一个React应用 As I mentioned earlier, create-react-app takes away much of the heavy work when starting a project, and we will be using it throughout this…

Python中对象的创建于使用

创建对象 在Python中&#xff0c;创建对象是通过实例化类来完成的。一个类是一个包含属性和方法的蓝图&#xff0c;它定义了一种对象的行为和特征。我们可以使用class关键字来定义一个类&#xff0c;然后使用类的名称和括号来实例化对象。 以下是一个创建对象的例子&#xff…

使用Docker搭建Sonarr

Sonarr是一款用于自动化管理电视节目的开源应用程序。它能够根据用户设定的规则自动搜索、下载并整理电视剧集&#xff0c;支持多用户、多队列管理&#xff0c;并且可以与下载客户端如SABnzbd、NZBGet等集成&#xff0c;以及与媒体服务器如Plex、Emby等配合使用&#xff0c;为用…

【3】3道链表力扣题:删除链表中的节点、反转链表、判断一个链表是否有环

3道链表力扣题 一、删除链表中的节点&#x1f30f; 题目链接&#x1f4d5; 示例&#x1f340; 分析&#x1f4bb; 代码 二、反转链表&#x1f30f; 题目链接&#x1f4d5; 示例&#x1f340; 分析① 递归② 迭代 三、判断一个链表是否有环&#x1f30f; 题目链接&#x1f4d5; …

ES6 模块化操作

ES6模块化主要有两个操作&#xff1a;import 和 export 如果在html文件的script中引用模块的话&#xff0c;要设置<script type"module"> 一种导入导出方法&#xff1a; a.js//分别暴露 export let num 1 export function compute(a, b){return a b }//统…

C++中使用虚函数实现多态

虚函数是C中用于实现多态&#xff08;Polymorphism&#xff09;的重要特性。下面是关于虚函数的讲解和代码示例&#xff1a;### 虚函数的定义&#xff1a; 虚函数是在基类中声明为 virtual 的成员函数。 在派生类中重写&#xff08;override&#xff09;这个虚函数&#xff0c;…

数据结构与算法 循环双链表基本运算与对称算法

一、实验内容 1、实现循环双链表的各种基本运算的算法 &#xff08;1&#xff09;初始化循环双链表h &#xff08;2&#xff09;依次采用尾插法插入a,b,c,d,e元素 &#xff08;3&#xff09;输出循环双链表h&#xff1b; &#xff08;4&#xff09;输出循环双链表h长度&am…

物联网学习1、什么是 MQTT?

MQTT&#xff08;Message Queuing Telemetry Transport&#xff09;是一种轻量级、基于发布-订阅模式的消息传输协议&#xff0c;适用于资源受限的设备和低带宽、高延迟或不稳定的网络环境。它在物联网应用中广受欢迎&#xff0c;能够实现传感器、执行器和其它设备之间的高效通…

HSP_04章_扩展: 进制、位运算

文章目录 10. 扩展: 进制11. 位运算11.1 二进制在运算中的说明11.2 原码 反码 补码11.3位运算符11.3.1 ~按位取反11.3.2 &按位与11.3.3 ^按位异或11.3.4 |按位或11.3.5 << 左移11.3.6 >> 右移 10. 扩展: 进制 进制介绍 进制的转换 2.1 其他进制转十进制 二进…

面试八股——redis——集群

0. redis集群的方案 1.主从复制&#xff08;高并发读&#xff09; 一个主节点负责写操作&#xff08;增删改&#xff09;&#xff0c;多个从节点负责查操作。 主从复制是让主节点修改数据之后&#xff0c;将对应数据同步到从节点中。 2.哨兵模式&#xff08;实现高可用&#x…