当前位置:网站首页>shell的脚本的基本用法
shell的脚本的基本用法
2022-07-31 05:20:00 【cp_dvd】
开头需要加#!/bin/bash(主要用于确定你需要的语言) pstree -p(查看当前shell)
结束需要加权限才能执行 chmod +x xxx或者./xxx(当前页面)
脚本错误
bash -n /path/to/som 用来测试语法错误(非执行)bash -x /path/to/so调试执行试错
语法错误,会导致后续的命令不继续执行,可以用bash -n 检查错误,提示的出错行数不一定是准
确的
命令错误,默认后续的命令还会继续执行,用bash -n 无法检查出来 ,可以使用 bash -x 进行观察
逻辑错误:只能使用 bash -x 进行观察
命名要求
区分大小写
不能使程序中的保留字和内置变量:如:if, for
只能使用数字、字母及下划线,且不能以数字开头,注意:不支持短横线 “ - ”,和主机名相反
变量定义和引用
环境变量:生效范围为当前shell进程及其子进程
本地变量:生效范围为当前shell进程中某代码片断,通常指函数
弱引用和强引用
"$name" 弱引用,其中的变量引用会被替换为变量值
'$name' 强引用,其中的变量引用不会被替换为变量值,而保持原字符串
显示已定义的所有变量:set
删除变量:unset <name>
if语句
单分支 if 判断条件; then条件为真的分支代码 fi
双分支 if 判断条件; then条件为真的分支代码 else 条件为假的分支代码 fi
多分支
if 判断条件1; then
条件1为真的分支代码
elif 判断条件2; then
条件2为真的分支代码
elif 判断条件3; then
条件3为真的分支代码
...
else
以上条件都为假的分支代码
fi
条件判断 case 语句 就是判断对错是否成立
read -p "Do you agree(yes/no)? " INPUT
case $INPUT in
[yY]|[Yy][Ee][Ss])
echo "You input is YES"
;;
[Nn]|[Nn][Oo])
echo "You input is NO"
;;
*)
echo "Input fales,please input yes or no!"
esac
边栏推荐
猜你喜欢
随机推荐
【博学谷学习记录】超强总结,用心分享 | 软件测试 测试基本概念、模型与用例
ES6-箭头函数
小型网站组建(ENSP)
LXC的安装与配置使用
通过js禁止ctrl+滚轮放缩浏览器页面,禁止用手势放大
顶级程序员都是怎么做的?
Debian 10 iptables (防火墙)配置
定义一个类,super的使用,私有属性
浅谈音视频开发入门基础及进阶资源分享
MySQL表的增删改查(1)
滑动窗口法
进程和计划任务管理
Pytorch study notes 13 - Basic_RNN
Webrtc从理论到实践二: 架构
Unity加载GIf动画
Qt TreeView 问题记录
Debian 10 配置网卡,DNS,IP地址
在 AWS 上从零开始设置 Incredibuild 构建系统
项目-log4j2排查问题
力扣.找到打字符串中所有字母异位词