shell中的反引号与$()区别

 今天在现在了ldd3的代码,运行scull中的scull_load的时候弹出如下错误:

[root@localhost scull]# ./scull_load
awk: cmd. line:1: /=="scull" {print /}
awk: cmd. line:1: ^ backslash not last character on line
mknod: wrong number of arguments

因为代码是刚刚从书中推荐的ftp://ftp.ora.com/pub/examples/linux/drivers/下载的,由于里面没有ldd3的代码,所以下载的ldd2的代码,其中的readme.txt提示可以到作者的网址ftp://ar.linux.it/pub/ldd2/去下载,我到里面得到了ldd3的代码,解压执行就出现了上面的错误提示。

后来经过对比验证才知道问题出在scull_load里面的

major=$(awk "//$2==/"$module/" {print //$1}" /proc/devices)

将其修改为

major=$(awk "/$2==/"$module/" {print /$1}" /proc/devices)

运行就没有问题了;或者修改为(注意是反引号)

major=’awk "//$2==/"$module/" {print //$1}" /proc/devices‘

也没有问题。

参考资源:

http://iwillfy2003.blog.sohu.com/60815550.html

http://www.lslnet.com/linux/dosc1/34/linux-258105.htm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值