检查shell脚本语法 Linux shell编程基础,一看就能入门

09/11 11:34:48 来源网站:辅助卡盟网

运行结果:

1
2
3

4. while 循环

注意与 for 循环的区别:

#!/bin/bash 
VAR=1
# 如果 VAR 小于 10,就打印出来
while [ $VAR -lt 10 ]
do
    echo $VAR
#   VAR 自增 1
    VAR=$[ $VAR + 1 ]
done

运行结果:

1

2
3
4
5
6
7
8
9

5. until 循环

until 语句与上面的循环的不同点是它的结束条件为 1:

#!/bin/bash 
i=0  
# i 大于 5 时,循环结束 
until [[ "$i" -gt 5 ]]     
do  
    echo $i
    i=$[ $i + 1 ]
done

6. break

Shell 中的 break 用法与高级语言相同,都是跳出循环,来看个例子:

#!/bin/bash 
for VAR in 1 2 3
do
#   如何 VAR 等于 2 就跳出循环
    if [ $VAR -eq 2 ]
    then
        break
    fi
    echo $VAR
done

运行结果:

1

7. continue

continue 用来跳过本次循环,进入下一次循环,再来看看上面的例子:

#!/bin/bash 
for VAR in 1 2 3
do
#   如果 VAR 等于 2,就跳过,直接进入下一次 VAR = 3 的循环 
    if [ $VAR -eq 2 ]
    then
        continue    
    fi
    echo $VAR
done

运行结果:

1
3

下面介绍 Shell 编程中比较重要的函数,好像每种编程语言的函数都很重要。

Shell 函数

函数可以用一句话解释:带有输入输出的具有一定功能的黑盒子,相信有过编程经验的同学不会陌生。那么,我们先来看看 Shell 中函数定义的格式。

1. 定义函数

有 2 种常见格式:

function fun_name()
{
}
fun_name()
{
}

例如:

#!/bin/bash 
function hello_world()
{

shell脚本正则表达式语法_检查shell脚本语法_shell脚本语法typeset

2. 调用函数

如何调用上面的 2 个函数呢?

# 1. 直接用函数名调用 hello 函数
hello
# 2. 使用「函数名 函数参数」来传递参数
hello_world 1 2
# 3. 使用「FUN=`函数名 函数参数`」 来间接调用
FUN=`hello_world 1 2`
echo $FUN

3. 获取返回值

如何获取 hello_world 函数的返回值呢?还记得 $? 吗?

hello_world 1 2
# $? 可用于获取前一个函数的返回值,这里结果是 1 
echo $?

4. 定义本地变量

使用 local 来在函数中定义本地变量:

fun()
{
    local x=1
    echo $x
}

俗话说,程序 3 分靠写,7 分靠调,下面我们就来看看如何调试 Shell 程序。

Shell 调试

使用下面的命令来检查是否有语法错误:

sh -n script_name.sh

使用下面的命令来执行并调试 Shell 脚本:

sh -x script_name.sh

来看个实际的例子检查shell脚本语法,我们来调试下面这个 test.sh 程序:

#!/bin/bash
for VAR in 1 2 3
do
    if [ $VAR -eq 2 ]
    then
        continue    
    fi
    echo $VAR
done

首先检查有无语法错误:

sh -n test.sh

没有输出,说明没有错误,开始实际调试:

sh -x test.sh

调试结果如下:

+ [ 1 -eq 2 ]
+ echo 1
1
+ [ 2 -eq 2 ]
+ continue
+ [ 3 -eq 2 ]
+ echo 3
3

其中带有 + 表示的是 Shell 调试器的输出,不带 + 表示我们程序的输出。

Shell 易错点

这里我总结了一些初学 Shell 编程容易犯的错误,大多都是语法错误:

1. [] 内不能嵌套 (),可以嵌套 []

2. $[ val + 1 ] 是变量加 1 的常用方法

3. [] 在测试或者计算中里面的内容最好都加空格

4. 单引号和双引号差不多,单引号更加严格检查shell脚本语法,双引号可以嵌套单引号

5. 一定要注意语句的格式,例如缩进

总结

这里面的内容浅显易懂,很适合刚刚入门的新手。我觉得很不错,希望能帮到大家。

参考链接:

技术干货:Linux Shell 编程基础,看这一篇就够了!

来源:【九爱网址导航www.fuzhukm.com】 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

SQL Error: select * from ***_ecms_game where title like '%检查shell脚本语法 Linux shell编程基础,一看就能入门%' or INSTR('检查shell脚本语法 Linux shell编程基础,一看就能入门',title)>0 order by newstime desc limit 10

游戏推荐

更多>
    SQL Error: select * from ***_ecms_game where titlepic<>'' order by newstime desc limit 6