当前位置:网站首页>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
边栏推荐
猜你喜欢
随机推荐
数据库/表的基本操作
全网首发!ADK To Win11PE(1)中文+包
OneManager搭建
MySQL表的增删改查(1)
随机数,函数
Pytorch study notes 13 - Basic_RNN
JDBC的使用
OSI七层模型
ES6-01-ES的简介
10.0 堆体系结构概述之元空间/永久代
ES6-新增的基本数据:Symbol
npm install出现node错误
力扣刷题之排序链表
数据驱动,
能否更上一层楼?探究 CMake 争论
911崩了,自养号测评环境IP有哪些更好的选择
Incredibuild 宣布支持 Yocto
滑动窗口法
什么样的人不适合入行编程?你真的适合学习编程吗?
力扣.有效的字母异位词