IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> SHELL脚本 -> 正文阅读

[系统运维]SHELL脚本

Shell

shell脚本

1.shell脚本书写

  • 命名

    shell脚本最好以.sh结尾, 脚本名称做到见名知意

  • 格式

    1. 脚本开头需要使用#!指定运行环境

    2. #代表注释

    3. 脚本中不要出现中文

      样例:

      #!/bin/bash
      #Author: 脚本作者
      #Create Time: 脚本创建时间
      #Script Description: 脚本描述
      
      # 脚本代码
      
      
      

2. 运行脚本

  • 给执行权限运行脚本

    chmod u+x filename
    ./ filename
    
  • 解释器直接运行

    bash filename
    sh filename
    
    # 查看系统中的shell解释器
    cat /etc/shells
    

3. 特殊符号

~ : 家目录
! : 执行历史命令 !! 执行上一条命令 !p 执行最近一次以p开头的命令  !66 执行历史命令中第78条命令
$ : 变量取值符
+ - * / % :数学运算符
& : 后台执行
* : 通配符, 匹配所有
? : 通配符, 匹配除回车意外的一个字符
; : shell中一行可执行多条命令, 命令间用;隔开
| : 管道符, 上条命令的输出作为下条命令的输入
\ : 转义字符
``: 反引号 命令中执行命令  echo " today is `date +F%`"
'': 单引号, 表示字符串, 单引号不解释变量
"":双引号, 表示字符串

4. 管道符

上条命令的输出作为下条命令的输入

5.重定向

> :重定向输入
>> :重定向追加输入
< : 重定向输出 wc < ./test.txt 统计txt文件
<< : 重定向追加输出

6.数学运算

expr 命令: 只能做整数运算, 格式比较古板, 注意空格
[root@192 opt] expr 1 + 1
2
[root@192 opt] expr 5 \* 3
15

# 判断是否为整数, $? 表示上一条命令是否执行成功, 成功为0 失败不为0
[root@192 opt] expr 5 + 1;echo $?
6
0

let 命令:数学运算
[root@192 opt] let sum=1+1
[root@192 opt] echo $sum
2

bc 命令:小数运算
[root@192 opt] echo "scale=2;141*100/7966"|bc
1.77

7.脚本退出

exit NUM :脚本中推出命令, NUM值为0-255


exit_code.sh
#!/bin/bash

echo 'haha'
exit 0

[root@192 opt]sh exit_code.sh
haha
[root@192 opt]echo $?
0



### 
echo 'haha'
exit 10

[root@192 opt]sh exit_code.sh
haha
[root@192 opt]echo $?
10

create_script.sh

#!/usr/bin/bash
#Author:ZhangYi
#Create Time:2021-11-30 22:24
#Script Description:create shell init script

file_path=`pwd`
file_name=$1

file=$file_path/$file_name
echo "#!/usr/bin/bash" >> $file
echo "#Author:ZhangYi" >> $file
echo "#Create Time:`date`" >> $file
echo "Script Description:" >> $file
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-12-01 18:06:28  更:2021-12-01 18:07:47 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 3:49:16-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码