不用付费不用登录的网站延安有哪些做网站的公司
- 作者: 五速梦信息网
- 时间: 2026年03月21日 10:08
当前位置: 首页 > news >正文
不用付费不用登录的网站,延安有哪些做网站的公司,美工培训班,如何制作网页模板Linux 之 shell 脚本 1、脚本的格式要求2、shell 脚本常用执行方式2.1、绝对路径或相对路径方式2.2、sh脚本方式#xff08;不推荐#xff09; 3、shell 的变量3.1、定义 shell 变量3.2、将命令返回值赋值给变量 #xff08;重点#xff09;3.3、设置环境变量3.4、位置参数… Linux 之 shell 脚本 1、脚本的格式要求2、shell 脚本常用执行方式2.1、绝对路径或相对路径方式2.2、sh脚本方式不推荐 3、shell 的变量3.1、定义 shell 变量3.2、将命令返回值赋值给变量 重点3.3、设置环境变量3.4、位置参数变量3.5、预定义变量 4、运算符5、条件判断6、流程控制6.1、if 判断6.2、case 语句6.3、for 循环6.4、while 循环 7、read 读取控制台输入8、函数8.1、常用系统函数 basename8.2、常用系统函数 dirname8.3、自定义函数 9、shell 综合案例 shell 是一个命令行解释器它为用户提供了一个向 linux 内核发送请求以便运行程序的界面系统级程序。用户可以使用 shell 来启动、挂起、停止甚至编写一些程序。 1、脚本的格式要求 ①、脚本以 #!/bin/bash 开头。 ②、脚本需要有可执行权限。 2、shell 脚本常用执行方式 2.1、绝对路径或相对路径方式 # 输入shell 脚本的绝对路径或相对路径的方式执行shell脚本# 首先 需要对 shell 脚本 赋执行权限 chmod 744 test_shell.sh
相对路径的方式执行
./test_shell.sh
绝对路径的方式执行
/usr/myshell/test_shell.sh2.2、sh脚本方式不推荐 使用该方式不需要 赋予shell脚本执行权限直接执行即可。 sh ./test_shell2.sh3、shell 的变量 shell 的变量分为系统变量 和 用户自定义变量。 系统变量 H O M E 、 HOME、 HOME、PWD、 S H E L L 、 SHELL、 SHELL、USER 等 # 输出系统变量 echo path \(PATH echo user \)USER3.1、定义 shell 变量 # 定义变量 变量值示例 A100
撤销变量 unset 变量 示例
unset A
声明静态变量readonly 变量。注意静态变量不能 unset。示例
readonly B101
把变量提升为全局环境变量可供其他shell程序使用。 定义变量的规则 ① 变量名称可以由字母、数字和下划线组成但不能以数字开头。等号两侧不能有空格。变量名称一般习惯为大写。 3.2、将命令返回值赋值给变量 重点 # 两种方式
方式一反引号运行里面的命令并把结果返回给变量。示例
Als -la
方式二等同于反引号。示例
A$(ls -la)3.3、设置环境变量 环境变量所在文件 1.系统级 ① /etc/profile该文件是用户登录时操作系统定制用户环境时使用的第一个文件应用于登录到系统的每一个用户。该文件一般是调用/etc/bash.bashrc文件。 /etc/bash.bashrc系统级的bashrc文件。② /etc/environment:在登录时操作系统使用的第二个文件,系统在读取你自己的profile前,设置环境文件的环境变量。 2.用户级这些文件处于家目录下 ① ~/.profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。这里是推荐放置个人设置的地方② ~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。不推荐放到这儿因为每开一个shell这个文件会读取一次效率肯定有影响。 ~/.bash_profile or ~./bash_login这里没有引用作者的下面会提到 ~/.pam_environment:用户级的环境变量设置文件没有做测试不知道管不管用。 # 基本语法
将 shell 变量输出为环境变量
export 变量名变量值
让修改后的配置信息立即生效
source 配置文件
查询环境变量的值
echo $变量名# 示例 export TOMCAT_HOME/opt/tomcat
生效
source /etc/profile3.4、位置参数变量 当我们执行一个 shell 脚本时某些场景需要获取到执行 shell脚本的命令行参数信息那么就可以使用位置参数变量。 基本语法 命令功能说明\(nn 为数字\)0 代表命令本身\(1- 9 代表第一个到第九个参数十以上的参数需要用大括号包含例 9 代表第一个到第九个参数十以上的参数需要用大括号包含例 9代表第一个到第九个参数十以上的参数需要用大括号包含例{10}\)*代表命令行中所有的参数\(*把所有的参数看成一个整体\) 也代表命令行中所有的参数不过 也代表命令行中所有的参数不过 也代表命令行中所有的参数不过把每个参数区分对待\(#代表命令行中所有参数的个数 [rootmyCentos6 zim]# vim test.sh#!/bin/bash echo 获取并打印命令行参数 echo \)0 \(1 \)2 echo 打印全部参数 \(* echo 打印全部参数- \) echo 参数个数 \(#[rootmyCentos6 zim]# ls -l 总用量 4 -rw-r--r--. 1 root root 154 8月 28 11:45 test.sh [rootmyCentos6 zim]# chmod 744 test.sh [rootmyCentos6 zim]# ls -l 总用量 4 -rwxr--r--. 1 root root 154 8月 28 11:45 test.sh [rootmyCentos6 zim]# ./test.sh aa 100 获取并打印命令行参数 ./test.sh aa 100 打印全部参数 aa 100 打印全部参数- aa 100 参数个数 2 [rootmyCentos6 zim]# 3.5、预定义变量 预定义变量就是 shell 脚本设计者事先已经定义好的变量可以直接在shell脚本中使用。预定义变量是一开始执行Script脚本时就会设定且不能被修改预定义变量当一执行程序时就有了。 基本用法 \)\( 当前进程的进程号PID。 \)! 后台运行的最后一个进程的进程号pid。 $? 最后一次执行的命令的返回状态。如果这个变量的值为0证明上一个命令正确执行如果这个变量的值为非0具体是哪个数字由命令自己决定,则证明上一个命令执行错误。 4、运算符 # 基本语法
方式一 $((运算式)) 示例
RESULT\(((23)*4) echo result\)RESULT
方式二 $[运算式] 示例
RESULT\([(23)*4] echo result\)RESULT
求两个参数的和
SUM\([\)PARAM1$PARAM2]
方式三 expr mn 注意expr 运算符间要有空格
expr *,/,% 分别代表 乘除取余
TEMPexpr 2 3 RESULTexpr $TEMP * 4 echo resultRESULT 5、条件判断 # 判断语句基本语法. 注意condition 前后要有空格
非空返回 true,可使用 $? 验证0 为 true, 1 为 false
[ condition ]
应用实例: [ test_condition ] 返回true
[ test_condition ]
[] 返回false
[]
条件满足执行后面的语句
[ condition ] echo ok || echo not ok# 案例ok 是否等于 ok if [ ok100 ok ] then echo equal fi# 案例/root/install.log 目录中的文件是否存在 if [ -e /root/install.log ] then echo 文件存在 fi 常用判断条件 两个整数的比较 字符串比较-lt 小于-le 小于等于-eq 等于-gt 大于-ge 大于等于-ne 不等于 按照文件权限进行判断 -r 有读的权限 [ -r 文件 ] 注意前后有空格-w 有写权限-x 有执行权限 按照文件类型进行判断 -f 文件存在并且是一个常规的文件-e 文件存在-d 文件存在并是一个目录 6、流程控制 6.1、if 判断 # 基本语法 if [ 条件判断式 ];then程序 fi
或者 基本语法 (推荐使用)
if [ 条件判断式 ]then程序elif [ 条件判断式 ]then 程序fi 注意事项[ 条件判断式 ] 中括号和条件判断式之间必须有空格。 6.2、case 语句 # 基本语法 case \(变量名 in 值1)如果变量的值等于值1则执行程序1;; 值2) 如果变量的值等于值2则执行程序2;;… 省略其他分支 … *)如果变量的值都不是以上的值则执行此程序;; esac# 应用示例命令行参数是 1时输出周一是2时输出周二其他情况输出other #!/bin/bash case \)1 in 1)echo 周一;; 2)echo 周二;; )echo other;; esac 6.3、for 循环 # 基本语法1 for 变量 in 值1 值2 值3…do 程序done# 示例 打印命令行输入的参数 #!/bin/bash for i in $ doecho the param is $i done
或
for j in \(doecho the num is \)j done # 基本语法2 for ((初始值;循环控制条件变量变化))do 程序 done# 示例从1加到100 的值输出显示 #!/bin/bash SUM0 for((i1.i100;i)) do SUM\([\)SUM\(i] done echo sum\)SUM6.4、while 循环 # 基本语法1 while[ 条件判断式 ] do 程序 done
应用示例从命令行输入一个数n,统计从1… n 的值是多少
#!/bin/bash SUM0 i0 while[ \(i -le \)1 ] doSUM\([\)SUM\(i]i\)[\(i1] done echo sum \)SUM7、read 读取控制台输入 # 基本语法 read [选项] [参数]
常用选项-p : 指定读取值时的提示符-t : 指定读取值时等待的时间秒如果没有在指定的时间内输入就不等待
常用参数变量指定读取值的变量名# 应用实例1 读取控制台输入的 num 值 并打印
#!/bin/bash read -p 请输入一个数num1 NUM1 echo 您输入的值时num1\(NUM1# 应用实例2 读取控制台输入的 num 值在10秒内输入,并打印 #!/bin/bash read -t 10 -p 请输入一个数num2 NUM2 echo 您输入的值时num2\)NUM28、函数 shell 编程和其他编程语言一样有系统函数也可以自定义函数。 8.1、常用系统函数 basename # basename 函数功能返回完整路径最后 / 的部分常用于获取文件名
suffix为后缀如果suffix被指定了basename会将pathname或string中的suffix去掉
basename [pathname] [suffix]
应用示例 返回/home/aaa/test.txt 的 test部分
basename /home/aaa/test.txt .txt
应用示例 返回/home/aaa/test.txt 的 test.txt部分
basename /home/aaa/test.txt8.2、常用系统函数 dirname # dirname 函数功能返回完整路径最后 / 的前面部分常用于返回路劲部分
从给定的包含绝对路径的文件名中去除文件名非目录的部分然后返回目录部分。
dirname 文件绝对路径# 应用实例 返回 /home/aaa/test.txt 的 /home/aaa dirname /home/aaa/test.txt8.3、自定义函数 # 基本语法 [ function ] funname[()] {Action;[return int;] }
调用直接写函数名 funname [值]# 应用实例计算输入两个参数的和 read,getSum
#!/bin/bash
function getSum() {SUM\([\)n1\(n2]echo sum\)SUM
}read -p 请输入第一个数n1 n1
read -p 请输入第二个数n2 n2getSum \(n1 \)n29、shell 综合案例 需求 ① 每天凌晨 2:10 备份数据库 myDb 到 /data/backup/db ② 备份开始和备份结束能够给出相应的提示信息 ③ 备份后的文件要求以备份时间为文件名并打包成 .tar.gz 的形式比如2023-08-28_230201.tar.gz ④ 在备份的同时检查是否有10天前备份的数据库文件如果有就将其删除。
在 /usr/sbin 目录下创建 mysql_db_backup.sh 脚本
vim /usr/sbin/mysql_db_backup.sh编写 mysql_db_backup.sh 脚本
#!/bin/bash
备份的路径
BACKUP/data/backup/db
当前的时间作为文件名
DATETIME\((date %Y_%m_%d_%H%M%S) echo 开始备份数据库myDb echo 备份的路径是 \)BACKUP/$DATETIME.tar.gz
主机
HOSTlocalhost
用户名
DB_USERroot
密码
DB_PWDroot
备份数据库名称
DATABASEmyDB
创建备份的路径
如果备份的路径文件夹存在就直接使用否则就创建
[ ! -d \(BACKUP/\)DATETIME ] mkdir -p \(BACKUP/\)DATETIME
执行 mysql 的备份数据库的指令
mysqldump -u\({DB_USER} -p\){DB_PWD} –host\(HOST \)DATABASE | gzip \(BACKUP/\)DATETIME/$DATETIME.sql.gz
打包备份文件
cd \(BACKUP tar -zcvf \)DATETIME.tar.gz $DATETIME
删除临时目录
rm -rf \(BACKUP/\)DATETIME
删除10天前的备份文件
find $BACKUP -mtime 10 -name *.tar.gz -exec rm -rf {} \; echo 备份文件成功 crontab 设置定时任务 10 2 * * * /usr/sbin/mysql_db_backup.sh.
相关文章
-
不要钱做网站软件软件技术专业里有网站开发吗
不要钱做网站软件软件技术专业里有网站开发吗
- 技术栈
- 2026年03月21日
-
不相关的网站做单项链接可以吗湖南长沙又检出1例阳性
不相关的网站做单项链接可以吗湖南长沙又检出1例阳性
- 技术栈
- 2026年03月21日
-
不同域名一样的网站新闻发稿
不同域名一样的网站新闻发稿
- 技术栈
- 2026年03月21日
-
不用付费不用登录的网站织梦模板可以在wordpress用
不用付费不用登录的网站织梦模板可以在wordpress用
- 技术栈
- 2026年03月21日
-
不用下载直接浏览的网站营销网站 深圳
不用下载直接浏览的网站营销网站 深圳
- 技术栈
- 2026年03月21日
-
不准别人网站做反链深圳做网站优化报价
不准别人网站做反链深圳做网站优化报价
- 技术栈
- 2026年03月21日






