shell脚本中的逻辑判断: 逻辑判断表达式:if [ $a -gt $b ]; if [ $a -lt 5 ]; if [ $b -eq 10 ]等 -gt (>); -lt(=);...a=1 那么 a 就不>3 所以就不满足条件,就是else 第三种格式:if …; then … ;elif …; then …; else …; fi 文件目录属性判断: 【 if file 】 判断是否是普通文件...,切存在 【-d file 】判断是否是目录,且存在 【 -e file 】判断文件或目录是否存在 【 -r file 】判断文件是否可读 可写 可执行 = 类似 判断的不同写法:【 -f $f 】||...-e file ]; then 表示文件不存在时会怎么样 if (($a<1)); then …等同于 if [ $a -lt 1 ]; then… [ ] 中不能使用,==,!...: 在网卡系统服务脚本中,如,/etc/init.d/iptables中就用到了case 在case中,可以在条件中使用“|”,表示或的意思 输入一个同学的分数,判断成绩是否及格,优秀。
最近博客进行了搬家,CDN源发生改变,想着在CDN上将博客所有图片刷新预热一遍,那么问题来了,刷新预热需要得到所有图片地址,于是直接使用Shell脚本递归遍历wp-content/uploads目录先得到图片文件路径...创建Shell脚本 使用vi编辑器,先创建一个vi traveDir.sh文件,复制下面的脚本代码: #!...fi done } #读取第一个参数 read_dir $1 别忘记给脚本添加执行权限chmod +x traveDir.sh 使用方法 上一个步骤已将脚本创建完毕,接下来只需要执行....11/snipaste_20191110_102750.png这个样子的,直接使用文本工具,将/data/wwwroot/xiaoz.me/批量替换为您自己的域名,然后将URL提交到CDN服务商进行刷新预热...总结 脚本批量导出文件路径 文本工具将站点根目录批量替换为自己的域名 提交URL刷新 脚本比较简单,网上一搜一大把,此文参考了:使用Shell遍历目录及其子目录中的所有文件方法
笔记内容: 20.5 shell脚本中的逻辑判断 20.6 文件目录属性判断 20.7 if特殊用法 20.8/20.9 case判断 笔记日期:2017-11-22 20.5 shell脚本中的逻辑判断...Shell的代码不一定需要写在一个文件里,像这种简单的语句,完全可以直接在命令行中写成命令去执行,示例: ? 只不过每一个语句需要使用分号隔开。...官方指定的是使用的方括号那种形式,不过具体按个人喜好吧,我还是比较推荐官方指定的那种形式。 关于shell中的逻辑运算符: && 与 || 或 20.6 文件目录属性判断 ?...在shell中经常会和文件和目录打交道,所以这个时候对文件或目录的判断就比较重要了。例如经常会需要去判断这个文件是否存在、文件的大小是否大于或小于多少、文件的属主属组是谁等等。...以上判断一个文件是否可读、可写、可执行,是基于当前用户的权限来判断的,所以就是判断当前的用户是否对这个文件拥有这些权限。
如果我们给客户制作网站,客户会发送过来一堆的图片,这些图片一般都是通过手机或者数码相机拍摄的。有一个问题就是这些图片会比较大。那我们就需要对这些图片进行压缩的处理,这就是我写的这个脚本的实际用途。...img) simg_w = simg.size[0] simg_h = simg.size[1] # 如果原图片宽高均小于设置尺寸,则将原图直接复制到目标目录中...只设置了最长边参数以及源目录 ? 脚本会提示,不设置目标目录则会覆盖源文件,直接回车,或者输入 Y 或者 y 确认,输入 N 或者 n 则退出程序。 设定了目标目录,但目标目录不存在 ?...脚本会提示目标目录不存在,直接回车,或者输入 Y 或 y 则会创建这个目录,输入 N 或者 n 则退出程序。 正常以及报错状态 ?...代码解析 首先,要写命令行的脚本,就需要处理各种各样的参数,所以,argparse 库是必不可少的 Python os 库对文件夹的常见用法 # 判断目录是否存在 os.path.exists(__dir
Shell脚本中的逻辑判断 格式1:if 条件 ; then 语句; fi 格式2:if 条件; then 语句; else 语句; fi 格式3:if …; then … ;elif …; then...then 文件目录属性判断 [ -f file ]判断是否是普通文件,且存在。...-f file ]判断如果不是普通文件且不存在 [ -d file ] 判断是否是目录,且存在 [ -e file ] 判断文件或目录是否存在 [ -r file ] 判断文件是否可读 [ -w file...-e file ]; then 表示文件不存在时会怎么样 if ((a<1));then…等同于if[a<1)); then …等同于 if [ a -lt 1 ]; then… [ ] 中不能使用使用|,表示或的意思, 比如 2|3) command ;; shell脚本案例 #!
Python3 初学实践案例(12)将源目录中的图片根据设定最长边参数保存到目标目录脚本(Image 的使用) 如果我们给客户制作网站,客户会发送过来一堆的图片,这些图片一般都是通过手机或者数码相机拍摄的...那我们就需要对这些图片进行压缩的处理,这就是我写的这个脚本的实际用途。...脚本会提示,不设置目标目录则会覆盖源文件,直接回车,或者输入 Y 或者 y 确认,输入 N 或者 n 则退出程序。...正常以及报错状态 代码解析 首先,要写命令行的脚本,就需要处理各种各样的参数,所以,argparse 库是必不可少的。...关于这个库的使用,可以看下我学习 python 的第三篇博文的详细介绍《argparse 命令行参数库的使用》 ,这里我就不详细说明了。
3. save参数 格式为save ,表示在指定的秒数内数据库存在指定的改变数时⾃动进⾏备份(Redis是内存数据库,这⾥的备份就是指把内存中的数据备份到磁盘上)。...5. dir参数 格式为dir后接指定的路径,默认为dir ./,指明Redis的⼯作⽬录为当前⽬录,即redis-server⽂件所在的⽬录。注意,Redis产⽣的备份⽂件将放在这个⽬录下。...未开启登录认证,未绑定redis到任何地址(此时任何ip都可以访问),还需要关闭保护模式 漏洞复现: windows下的redis客户端下载:https://github.com/caoxinyu/RedisClient...若有则生成一段随机数使用该公钥加密后发送给客户端; (4)客户端收到服务器发来的加密后的消息后使用私钥解密,并把解密后的结果发给服务器用于验证; (5)服务器收到客户端发来的解密结果,与自己刚才生成的随机数比对...六、 写二进制文件,利用dns、icmp等协议上线(tcp协议不能出网) 写二进制文件跟前边有所不同,原因在于使用RDB方式备份redis数据库是默认情况下会对文件进行压缩,上传的二进制文件也会被压缩,
Shell 环境,由于未携带登录验证信息(user、host、password)等处于未连接服务状态,在内部使用 \c \h 等简易命令外,执行其它获取服务器信息的命令会报 Not Connected....MySQL Shell for GreatSQL 执行的脚本也是如此。如果未配置任何 Secret Store Helper,则以交互方式请求密码。 注意!...progressFile:在导入的过程中,会在备份目录生成一个progressFile,用于记录加载过程中的进度信息,这个进度信息可用来实现断点续传功能。...resetProgress:如果备份目录中存在progressFile,默认会从上次完成的地方继续执行。如果要从头开始执行,需将 resetProgress 设置为 true。该参数默认为 off。...对于不能进行并行备份的表,目前会备份到一个文件中。如果该文件过大,不用担心大事务的问题,util.loadDump 在导入时会自动进行切割。
备份MySQL数据库 在我们日常运维中,定期备份数据库,是一个很好的习惯。我们就以此为需求,来书写我们的备份脚本。 #!.../bin/bash # 设置备份目录 BACKUP_DIR="/home/backup" # 获取当前日期 DATE=$(date +%Y-%m-%d) # 检查备份目录是否存在,如果存在则退出...然后通过mysql命令获取需要备份的数据库列表。 然后使用for循环把刚才获取的数据库列表依次进行循环备份,并存储在对应的目录里面。...2.通过zookeeper的四字命令,检查zk的状态,然后把这个zk的状态值传给一个变量。 3.再次定义了一个当前时间的变量,用于后面输出到日志里面打印时间。...4.通过一个if判断,判断zk的状态是否满足预期,如果满足预期,则说明zk是正在运行中,并将日志输出到日志里面 5.如果不满足预期,则说明zk未运行,就执行启动zk服务。
还原 MySQL 备份内容 有两种方式还原,第一种是在 MySQL 命令行中,第二种是使用 SHELL 行完成还原 在系统命令行中,输入如下实现还原: mysql -uroot -p123456 备份文件 在Linux中,使用vi或者vim编写脚本内容并命名为:mysql_dump_script.sh !...5.如果文件超出限制大小,就删除最早创建的sql文件 使用crontab定期执行备份脚本 在 Linux 中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]。...cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。 cron的配置文件称为“crontab”,是“cron table”的简写。...-l 在标准输出上显示当前的crontab。 -r 删除当前的crontab文件。 -e 使用VISUAL或者EDITOR环境变量所指的编辑器编辑当前的crontab文件。
还原 MySQL 备份内容 有两种方式还原,第一种是在 MySQL 命令行中,第二种是使用 SHELL 行完成还原 1....在登录进入mysql系统中,通过source指令找到对应系统中的文件进行还原: mysql> source /data/mysqlDump/mydb.sql 在 Linux中,通常使用BASH脚本对需要执行的内容进行编写...编写BASH维护固定数量备份文件 在Linux中,使用vi或者vim编写脚本内容并命名为:mysql_dump_script.sh #!...5.如果文件超出限制大小,就删除最早创建的sql文件 使用crontab定期执行备份脚本 在 Linux 中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]。...-l 在标准输出上显示当前的crontab。 -r 删除当前的crontab文件。 -e 使用VISUAL或者EDITOR环境变量所指的编辑器编辑当前的crontab文件。
指令找到对应系统中的文件进行还原: mysql> source /data/mysqlDump/mydb.sql 在 Linux 中,通常使用 BASH 脚本对需要执行的内容进行编写,加上定时执行命令...编写 BASH 维护固定数量备份文件 在 Linux 中,使用 vi 或者 vim 编写脚本内容并命名为:mysql_dump_script.sh #!...如果文件超出限制大小,就删除最早创建的 sql 文件 04 使用 crontab 定期执行备份脚本 在 Linux 中,周期执行的任务一般由 cron 这个守护进程来处理 [ps -ef|grep cron...cron 读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。cron 的配置文件称为 “crontab”,是 “cron table” 的简写。...-l 在标准输出上显示当前的 crontab。-r 删除当前的 crontab 文件。-e 使用 VISUAL 或者 EDITOR 环境变量所指的编辑器编辑当前的 crontab 文件。
所以,在你的程序中检查类似的情况。 21.Bash 中的函数 与任何编程方言一样,函数在 Linux shell 脚本中扮演着重要角色。它们允许管理员创建自定义代码块以供频繁使用。...23.从 Bash 脚本创建目录 使用 shell 脚本运行系统命令的能力使开发人员的工作效率大大提高。下面的简单示例将向您展示如何在 shell 脚本中创建目录。 #!...此外,您需要提供文件的目录名作为命令行参数。对当前工作目录使用句点(.)。 35.打印文件或目录的数量 下面的 Linuxbash 脚本查找给定目录中存在的文件或文件夹的数量。...36.清理日志文件 下一个简单的示例演示了在现实生活中使用 shell 脚本的简便方法。该程序只需删除 / var/log 目录中的所有日志文件。您可以更改保存此目录的变量以清理其他日志。 #!...Bash 请记住以 root 身份运行此 Linuxshell 脚本。 37.使用 Bash 备份脚本 Shell 脚本提供了一种强大的方法来备份文件和目录。
所以,在你的程序中检查类似的情况。 21、Bash 中的函数 与任何编程方言一样,函数在 Linux shell 脚本中扮演着重要角色。它们允许管理员创建自定义代码块以供频繁使用。...23、从 Bash 脚本创建目录 使用 shell 脚本运行系统命令的能力使开发人员的工作效率大大提高。下面的简单示例将向您展示如何在 shell 脚本中创建目录。 #!...此外,您需要提供文件的目录名作为命令行参数。对当前工作目录使用句点(.)。 35、打印文件或目录的数量 下面的 Linuxbash 脚本查找给定目录中存在的文件或文件夹的数量。...36、清理日志文件 下一个简单的示例演示了在现实生活中使用 shell 脚本的简便方法。该程序只需删除 / var/log 目录中的所有日志文件。您可以更改保存此目录的变量以清理其他日志。 #!...请记住以 root 身份运行此 Linuxshell 脚本。 37、使用 Bash 备份脚本 Shell 脚本提供了一种强大的方法来备份文件和目录。
copy的文件或目录 dest参数 :用于指定文件将被拷贝到远程主机的哪个目录中,dest为必须参数 content参数 :当不使用src指定拷贝的文件时,可以使用content直接指定文件内容,src...=yes,情况就不一样了,当使用正则表达式替换对应行时,同时设置了backrefs=yes,那么当正则没有匹配到任何的行时,则不会对文件进行任何操作,相当于保持原文件不变, backup参数:是否在修改文件之前对文件进行备份...,当不使用此参数时,默认为管理员用户 job参数:用于指定计划的任务中需要实际执行的命令或者脚本,比如上例中的"echo test"命令。...append参数:如果用户原本就存在多个附加组,那么当使用groups参数设置附加组时,当前设置会覆盖原来的附加组设置,如果不想覆盖原来的附加组设置,需要结合append参数,将append设置为yes...shell参数:此参数用于指定用户的默认shell uid参数:此参数用于指定用户的uid号 expires参数:此参数用于指定用户的过期时间,相当于设置/etc/shadow文件中的的第8列,比如,你想要设置用户的过期日期为
还原 MySQL 备份内容 有两种方式还原,第一种是在 MySQL 命令行中,第二种是使用 SHELL 行完成还原 在系统命令行中,输入如下实现还原: mysql -uroot -p123456 备份文件 在Linux中,使用vi或者vim编写脚本内容并命名为:mysql_dump_script.sh #!...5.如果文件超出限制大小,就删除最早创建的sql文件 使用crontab定期执行备份脚本 在 Linux 中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]。...cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。cron的配置文件称为“crontab”,是“cron table”的简写。...-l 在标准输出上显示当前的crontab。-r 删除当前的crontab文件。-e 使用VISUAL或者EDITOR环境变量所指的编辑器编辑当前的crontab文件。
/mydb.sql 还原mysql备份内容 有两种方式还原,第一种是在MySQL命令行中,第二种是使用SHELL行完成还原 在系统命令行中,输入如下实现还原: mysql -uroot -p123456...编写备份脚本 在Linux中,使用vi或者vim编写脚本内容并命名为:mysql_dump_script.sh #!...cron读取一个或多个配置文件,这些配置文件中包含了命令行及其调用时间。 cron的配置文件称为“crontab”,是“cron table”的简写。...+ -r 删除当前的crontab文件。 + -e 使用VISUAL或者EDITOR环境变量所指的编辑器编辑当前的crontab文件。当结束编辑离开时,编辑后的文件将自动安装。...: crontab -l crontab的使用示例 每天早上6点 //注意单纯echo,从屏幕上看不到任何输出,因为cron把任何输出都email到root的信箱了。
引言在系统管理中,自动化备份与恢复流程是至关重要的一环。借助 Shell 脚本,我们能够轻松编写脚本实现数据备份和恢复,确保数据的安全性和完整性。...backup_file:使用当前日期作为备份文件名,并设置为 .tar.gz 格式。...tar -zcvf:tar 命令用于打包文件并压缩,-z 参数表示使用 gzip 压缩,-c 参数表示创建新的备份文件,-v 参数表示显示详细的打包过程。恢复脚本示例 #!...tar -zxvf:tar 命令中 -x 参数表示解压,-C 参数指定解压到的目录。设置定时任务 crontab 自动备份使用 crontab -e 命令编辑定时任务,设置自动备份的时间规则。.../bin/bash /data/shell/backup_script.sh:指定要执行的备份脚本的路径。总结自动化备份与恢复是系统管理中不可或缺的一部分。
/mydb.sql 1.3、 还原mysql备份内容 有两种方式还原,第一种是在MySQL命令行中,第二种是使用SHELL行完成还原 1.在系统命令行中,输入如下实现还原: mysql -uroot.../mydb.sql 二、 编写脚本维护备份的数据库文件 在linux中,通常使用BASH脚本对需要执行的内容进行编写,加上定时执行命令crontab实现日志自动化生成。...2.1、 编写BASH维护固定数量备份文件 在Linux中,使用vi或者vim编写脚本内容并命名为:mysql_dump_script.sh #!...5.如果文件超出限制大小,就删除最早创建的sql文件 2.2、 使用crontab定期执行备份脚本 在LINUX中,周期执行的任务一般由cron这个守护进程来处理[ps -ef|grep cron]。...-l 在标准输出上显示当前的crontab。 -r 删除当前的crontab文件。 -e 使用VISUAL或者EDITOR环境变量所指的编辑器编辑当前的crontab文件。
领取专属 10元无门槛券
手把手带您无忧上云