Systemtap 学习四(表达式,命令行传递参数)

$ptr->member

ptr是一个在被探测的上下文中可以获得的内核中的指针


二、通过stap命令行传入的参数。

字面量可以是在双引号中的string,也可以是整数值。通过在stap命令结尾处加入的参数并看做是字面量。这些字面量可以在上下文中任何可以使用字面量的地方使用。但是如果是对一个不存在的参数进行引用,则会报错。


(1)使用$1……$<NN>来将完整的输入参数按照其本来意义传递到输入流中,将来可以在脚本中使用。

(2)使用@1……@<NN>来把完整的输入参数映射为一个字符串字面量(不论其原来是字符串还是数值)

比如:

example.stp

probe begin

{

printf("%d,%s\n",$1,@2)

}

在命令行:

stap example.stp 5+5 5+5

执行 结果 :

10,5+5

解释:第一个参数按其本身的意思被读入后,systemtap会分析它是一个数值,进行计算后输出。。第二个参数(虽然和第一个一样)由于使用@来传入,systemtap直接把它作为string字面值。所以输出和输入一模一样。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值