eval (eval)

eval (eval)

eval 指令 教學與筆記。

說明

一個 shell 命令會先 evaluate 一次,看到有 $ 特殊字元就會把變數替換成它的

使用 eval 會再執行一遍 evaluate 的動作,這種 double scan 的方法對一些變數代換很有用

因為 eval 不是喚起另一個 shell 來執行,而是在原本的 shell 內多執行 evaluate 動作,所以代換結果可以保留下來

範例

1
2
3
4
5
6
7
8
9
10
#!/bin/sh
count=1
var1=Hi
var2=I
var3=am
var4=Lucian
while [ $count -lt 5 ]; do
eval "echo \$var$count"
let 'count=count + 1'
done

Example Result

1
2
3
4
Hi
I
am
Lucian
Author

Meow Lucian

Posted on

2022-09-14

Updated on

2022-09-15

Licensed under

Comments