Chinaunix

标题: printf的问题。貌似很简单,但是我真不知道…… [打印本页]

作者: xiaobai2621    时间: 2012-09-10 17:13
标题: printf的问题。貌似很简单,但是我真不知道……
本帖最后由 xiaobai2621 于 2012-09-10 17:32 编辑

先说明一下,这个问题我事前是有baidu或google过的。但是没有相关信息……
希望有人能解答。

我在鸟哥的教材中看到有怎么一句话。
printf '%s\t %s\t %s\t %s\t %s\t \n' $(cat printf.txt)
这句话,我就一个不明白。就是$(cat printf.txt)。这里的$()到底是啥子意思。
我刚开始以为是变量,后来发现如果是变量的话应该${},用在这里也不对。
我又想,这个应该是printf的固定格式。百度、google出来的结果都是说C语言中printf中的格式。
再后来我又想到正则表达中的含义,但是套在这个语句中,牛头不对马嘴啊。
迷糊中,希望有人能解答一下。这个$()到底从哪里来,是表示什么含义,用的很多吗?
谢谢给位。
作者: zooyo    时间: 2012-09-10 17:16
提示: 作者被禁止或删除 内容自动屏蔽
作者: xiaobai2621    时间: 2012-09-10 17:26
本帖最后由 xiaobai2621 于 2012-09-10 17:39 编辑

回复 2# zooyo


    感谢版主。
那上面这句话的意思和
printf '%s\t %s\t %s\t %s\t %s\t \n' `cat printf.txt`
有什么区别吗?
或者我可以不可以这样理解:``的功能和$()一样。就是表示优先执行?并把执行的结果当成printf的输入。
作者: xiaobai2621    时间: 2012-09-10 17:29
再顶一下。
作者: xiaobai2621    时间: 2012-09-10 17:39
再顶一顶,顶顶更健康。
作者: kk5234    时间: 2012-09-10 17:40
本帖最后由 kk5234 于 2012-09-10 17:40 编辑

回复 3# xiaobai2621



    ``的功能和$()一样,先执行。
作者: linggang_123    时间: 2012-09-10 17:40
shell  不懂,帮顶一下。。
作者: xiaobai2621    时间: 2012-09-10 17:42
本帖最后由 xiaobai2621 于 2012-09-10 17:42 编辑

回复 6# kk5234


    非常感谢kk5234。
看来我没有进错论坛。
作者: Shell_HAT    时间: 2012-09-11 07:11
回复 7# linggang_123


打开ABS,看看第287页。

Advanced Bash-Scripting Guide 3.9.1 中文版.pdf
http://bbs.chinaunix.net/thread-1610033-1-1.html
作者: linggang_123    时间: 2012-09-11 18:10
回复 9# Shell_HAT


    谢hat老哥。。。
作者: fengshijie    时间: 2012-09-11 23:17
$()与``是用来执行命令的,并将命令的执行结果返回




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2