第 52 篇 - 研究 shell 解释器 - 居然可以支援 function

原来 bash 还可以支持 function 概念 @@+

test@test:~$ vim demo.sh

脚本内容

#!/bin/bash

a(){
    echo 'a'
}
b(){
    echo 'b'
}
main(){
    a
    b
}
main "$@"
test@test:~$ sh demo.sh
a
b

还支援全局变数,写个小例子:

test@test:~$ vim demo.sh

#!/bin/bash bash

a=123
set(){
    a=456
}
set
echo $a

test@test:~$ sh demo.sh
456

另外发现居然变数中间不能有空白...
https://ithelp.ithome.com.tw/upload/images/20201026/20129008suyGq5DHOv.png


<<:  [Golang]slice介绍与心智图

>>:  .NET CLI 打包成单一免安装 Runtime/SDK Exe 执行档

IOS、Python自学心得30天 Day-24 Firebase衔接Python-2

前言: 知道怎麽使用 Firebase 的资料後 可以开始把辨识的程序码衔接上去 辨识程序码: im...

DAY10: setTimeout和setImmediate的比较

今日要介绍的最後一个是setTimeout(),在DAY6: Node 的内部机制(二)的非阻塞范例...

Day 24 - 影像处理篇 - 用Canvas实作动态绿幕抠像 - 成为Canvas Ninja ~ 理解2D渲染的精髓

上一篇我们提到我们接着要开始玩一些比较有趣的实作~ 所以我们就来讲讲怎麽在web端实作绿幕抠像(Gr...

声明(claim)

-身份和存取管理 典型的身份验证过程包括三个步骤: 主体向身份提供者 (IdP) 表明其身份。 I...

[SAP][PP]计划单转工单_BOM问题?

请教各位有没有碰过以下问题 主件料号多阶BOM如下 1.主件料号 2.半成品A(F) 2.半成品B(...