当前位置:首页 » 操作系统 » linuxeval

linuxeval

发布时间: 2025-06-05 08:06:10

1. linux shell 脚本 间接获取输入参数的方法

如果是bash,可以用indirect expansion来搞,语法为 ${!var}。
比如
foo=bar
bar=123
echo ${!foo}
会打印 123

再比如下面的脚本,依次打印脚本的各个输入参数。

#!/bin/bash
var=1
while [ $var -le $# ]
do
echo "Param $var is ${!var}"
let var++
done

不用indirect expansion,也可以用 eval, 比如

#!/bin/bash
var=1
while [ $var -le $# ]
do
eval echo "Param $var is \$$var"
let var++
done

2. linux上安装了pyv8 执行execjs的时候想用pyv8的环境去执行,但是 运行的时候 说找不到js的运行环境怎么办

pyv8 的作用是在python中执行js代码,然后可以使用js里的变量等内容。python取得javascript里面的值、javascript取得python里面的值、python和javascript里面的函数交互
mac下的安装:pip install -e git://github.com/brokenseal/PyV8-OS-X#egg=pyv8
安装后有两个文件:一个PyV8.py 另一个_PyV8.so
下面示例是执行js文件
from pyv8 import PyV8

ctxt = PyV8.JSContext()
ctxt.enter()

with open('/usr/graph.js') as f:
jsdata = f.read() # print jsdata
print ctxt.eval(jsdata)

下面是执行一段代码
import PyV8

ctxt = PyV8.JSContext()
ctxt.enter()
func = ctxt.eval("""
(function(){
function hello(){
return "Hello world.";
}
return hello();
})""")print func()

则在python环境中打印出js执行的结果:Hello world.
更多信息可参考《Linux就该这么学》

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:585
制作脚本网站 发布:2025-10-20 08:17:34 浏览:881
python中的init方法 发布:2025-10-20 08:17:33 浏览:574
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:761
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:678
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1005
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:251
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:108
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:799
python股票数据获取 发布:2025-10-20 07:39:44 浏览:705