作者cclalaso ()
看板Linux
标题[问题] 关於macbook bash 的 printf
时间Sun Jan 15 20:55:29 2017
目前是使用macbook练习bash指令
想请教linux的前辈们
prinf指令中,有一个’n$’格式
man page 文件解释此格式可以自订排序显示後面引数(n:代表第几个引数)
也就是说:
(intput)
printf "%s, %s" "first" "second"
(output)
first, second
加入n$格式:
(input)
printf "%2$s, %1$s" "first" "second"
(output)
second, first
网路上找到的例子也都是如此使用
可是macbook却出现错误讯息:
-bash: printf: `$': invalid format character
这是为什麽呢??
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 223.137.237.213
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Linux/M.1484484931.A.D3E.html
1F:→ drm343: 因为 mac 上的 bash 不是最新版 01/15 21:51
2F:→ cclalaso: 谢谢! 01/15 22:11
3F:→ danny8376: mac的bash很旧 要用homebrew/macports装新版用 01/18 05:01
4F:→ lantw44: 不过新版的 bash 真的有这功能吗?我用 bash 4.4.5 01/18 14:05
5F:→ lantw44: 还是出现 bash: printf: 「$」: 无效格式字元 01/18 14:05
6F:→ HamalAri: 好像 coreutils 也有 printf 01/18 14:31
7F:→ HamalAri: 这样如果用 printf 应该是吃 bash 内建的 01/18 14:31
8F:→ HamalAri: 不过我的 /usr/bin/printf 也无法接受这格式 01/18 14:32
9F:推 pizzahut: 我在CentOS7上面这样试也跟原po出现一样结果@@ 01/18 16:30
10F:→ lantw44: 刚才发现 FreeBSD 的 /usr/bin/printf 可以接受 01/18 18:12
11F:→ lantw44: FreeBSD 上的 man 1 printf 还真的有讲到这功能 01/18 18:13
12F:→ HamalAri: 所以 BSD 的 bash 也不吃嘛,BSD 的 /usr/bin/printf 01/18 22:47
13F:→ HamalAri: 是 world 里面包含的吗? 01/18 22:47
14F:→ HamalAri: OSX 是不是也有 /usr/bin/printf 啊? 01/18 22:48
15F:→ lantw44: 这里的 world 是指? 01/18 22:58
16F:→ HamalAri: 就 make world 01/18 23:27
17F:→ lantw44: 那当然就在 world 里面了,套件是不会动 /usr/bin 的 01/19 01:02