
shell脚本
包括脚本相关知识点、成品脚本
我来烤烤你
搞咩啊靓仔
展开
-
shell脚本 $* 与 $@ 的区别
$* 与 $@ 的区别详解????下述内容的详细解释:f1/f2脚本的前两行的运行结果都表示:不打双引号时, 二者都代表全部字符,正常输出 a b c分别将"$*"和"$@"作为参数传递给file.sh,根据输出结果可知这两个变量是整体还是离散值[root@centos8/~]# cat f1.sh#!/bin/bashecho "f1.sh:all args are $@"echo "f1.sh:all args are $*"./file.sh "$*"原创 2021-06-11 01:09:43 · 153 阅读 · 0 评论 -
shell脚本安全和 set命令
5 脚本安全和 set 命令5.1 set 命令set 命令:用来定制shell环境为了防止变量赋值故障导致问题,应使用set -u进行检查,发现变量为空会报错为了防止错误命令导致后续问题,应使用set -e,一旦发现错误立即退出使用方法:写在脚本内容最前方即可!!!#!/bin/bashset -e------------------------------------------------------------# 其他选项说明-u 在扩展一个没有设置的变量时,显示错原创 2021-06-09 21:00:48 · 964 阅读 · 0 评论 -
shell脚本退出状态码变量
3.9 退出状态码变量 $?1 含义进程执行后,将使用变量 $? 保存状态码的相关数字,不同的值反应成功或失败$? 取值范例 0-255$?的值为0 代表成功(默认)$?的值是1~255 代表失败2 范例[root@centos8 ~]# ping -c1 -w1 hostdown &> /dev/null [root@centos8 ~]# echo $?2[root@centos8 ~]# curl http://www.wangxiaochun.co原创 2021-06-09 20:54:38 · 295 阅读 · 0 评论 -
shell脚本位置变量
3.8 位置变量????1 含义在bash shell中内置的变量, 在脚本代码中调用的通过命令行传递给脚本的参数$1, $2, ... 对应第1个、第2个等参数,shift [n]换位置$0 表示脚本文件本身,包括路径$* 传递给脚本的所有参数'全部参数合为一个字符串$@ 传递给脚本的所有参数'每个参数为独立字符串$# 传递给脚本的参数 的个数注意:$@ $* 只在被双引号包起来的时候才会有差异=2 清空所有位置变量set --=3 功能解释#!/bin/bashec原创 2021-06-09 20:53:52 · 809 阅读 · 0 评论 -
shell只读变量
3.7 只读变量1 声明与查看只读变量:只能声明定义,但后续不能修改和删除声明只读变量:readonly namedeclare -r name查看只读变量:readonly [-p]declare -r=2 删除删除只读变量的方法:退出账号即可刷新内存,消除变量!!![root@centos8/~]# readonly PI=3.14159[root@centos8/~]# echo $PI3.14159[root@centos8/~]# PI=3.14-ba原创 2021-06-09 20:51:59 · 746 阅读 · 0 评论 -
shell环境变量
3.6 环境变量????比普通变量影响范围增大,能对所有子shell生效1 查看# 查看所有环境变量env printenvexportdeclare -x2 定义与删除# 定义新的环境变量export name=VALUEdeclare -x name=VALUE# 删除变量unset name注意:在子shell中用unset删除自定义环境变量,父shell中不会失效=3 bash自带的环境变量# bash自带的环境变量如下PATH 外部命令缓存路径S原创 2021-06-09 20:51:25 · 166 阅读 · 0 评论 -
shell脚本变量基础
3 变量3.1 变量的定义【定义】变量表示命名的内存空间,将数据放在内存空间中,通过变量名引用,获取数据=3.2 变量类型变量类型(按定义方式):内置变量,如:PS1,PATH,HISTSIZE用户自定义变量=不同的变量存放的数据不同,决定了:数据存储方式参与的运算表示的数据范围=变量数据类型:字符数值:整型、浮点型(bash 不支持浮点数)=3.3 编程语言分类静态和动态语言静态编译语言:使用变量前,先声明变量类型,之后类型不能改变,在编译时检查,如:原创 2021-06-09 20:50:30 · 137 阅读 · 0 评论 -
shell脚本基本语法
2.1 shell脚本的用途2.2 shell脚本基本结构【特点】shell脚本编程:是基于过程式、解释执行的语言【格式】基本格式要求:首行需要写明命令解释器,称之为【shebang机制】(shebang是 #! 的音译)#!/bin/bash#!/usr/bin/python#!/usr/bin/perl=2.3 创建shell脚本过程1 首行与注释使用文本编辑器来创建文本文件,如vim第一行必须包括shell声明序列:#!添加注释:注释以 # 开头(必要的描述信息,方便后期维护原创 2021-06-09 20:49:03 · 87 阅读 · 0 评论 -
二进制安装Tomcat 脚本【CentOS 7】
源码下载官方和镜像站点下载:https://tomcat.apache.org/download-80.cgihttps://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/说明提前准备好 JDK 包此处使用的是jdk-8u271-linux-x64.tar.gz脚本内容#!/bin/bash##********************************************#Author: jacklee#QQ:原创 2021-04-11 13:08:37 · 215 阅读 · 0 评论 -
编译安装nginx脚本(CentOS 7)
⚡脚本#!/bin/bash##********************************************#Author: jacklee#QQ: #Time: #FileName: nginx.sh#Copyright: 2020 All rights reserved#Description: #*********************************************ins() {yum -y原创 2021-04-09 13:05:18 · 133 阅读 · 0 评论 -
脚本实现 0~100 求和、求奇数之和
脚本实现 0~100 求和的多种方式#!/bin/bashsum=0for i in {1..100};dolet sum+=i;doneecho "sum=$sum"#!/bin/bashfor((sum=0,i=1;i<=100;sum+=i,i++));do truedoneecho $sum# 命令直接实现:seq -s + 100|bcseq 100 | paste -sd + | bcecho {1..100}|tr ' ' + | bc拓展:计算原创 2020-12-27 20:12:43 · 706 阅读 · 0 评论 -
一键搭建LNMP架构脚本
一键搭建LNMP架构脚本说明在 CentOS 7 已测试成功相关软件源码包下载较慢,需要在目录中准备好离线包# 所需源码包:mysql-5.7.29-linux-glibc2.12-x86_64.tar.gznginx-1.18.0.tar.gzphp-7.4.7.tar.bz2wordpress-5.4.2-zh_CN.tar.gz注意:浏览器访问之前确保Windows主机已添加DNS解析记录(路径:C:\Windows\System32\drivers\etc\hosts)脚原创 2020-11-29 19:25:50 · 254 阅读 · 0 评论 -
CentOS一键编译安装httpd-2.4.46
适用 CentOS 7/8#!/bin/bash##********************************************#Author: jacklee#QQ: 1227163339#Time: 2020-10-26_23:19:24#FileName: httpd.sh#Copyright: 2020 All rights reserved#Description: #****************原创 2020-10-30 10:05:54 · 1121 阅读 · 0 评论 -
PXE 基于网络自动安装CentOS 6/7/8
PXE 基于网络自动安装CentOS 6/7/8说明:下载好相关镜像文件,新建虚拟机安装系统使用 CentOS 8 作为http、dhcp、tftp 服务器要求作为服务器的 CentOS 8 的 ip 为 10.0.0.8在VM上依次添加光驱并选择对应的镜像文件:8 > 7 > 6设置服务端CentOS 8 正常开机,确保网络畅通,执行以下脚本:#!/bin/bash. /etc/init.d/functionsecho -e "\e[1;32m开始配置服务器!请等待。。原创 2020-09-30 17:28:16 · 474 阅读 · 0 评论 -
CentOS 系统安装后初始化设置脚本
CentOS 系统安装后初始化设置脚本说明:使用光盘手动安装,选择最小化安装适用于CentOS 6/7/8 系统由于刚装好的系统使用DHCP获取随机ip,因此建议在VM上直接运行,避免ip变化导致断开连接最终获得ip:CentOS 6 = 10.0.0.6CentOS 7 = 10.0.0.7CentOS 8 = 10.0.0.8若在Xshell上执行,应遵循以下要求之一:避免执行第4项【ip与网卡名设置】提前将脚本内容中对应版本的ip修改为当前本机的ip,即可避免掉线原创 2020-09-30 16:04:34 · 438 阅读 · 0 评论