当前位置:首页 » 操作系统 » 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就该这么学》

热点内容
我的世界国服pvp服务器ip地址 发布:2025-08-17 19:45:35 浏览:497
聊城电脑服务器 发布:2025-08-17 19:34:59 浏览:407
互联网编程语言 发布:2025-08-17 19:18:40 浏览:851
python主流框架 发布:2025-08-17 19:11:51 浏览:176
开源海量文件存储 发布:2025-08-17 19:07:05 浏览:193
带密码的发票有什么用 发布:2025-08-17 18:53:18 浏览:689
免费php模板下载 发布:2025-08-17 18:47:31 浏览:240
ubuntuphp开发 发布:2025-08-17 18:34:44 浏览:499
c语言小程序游戏 发布:2025-08-17 18:23:09 浏览:802
ios今日头条源码 发布:2025-08-17 18:23:02 浏览:311