0

如何使用大括号扩展来制作相当于cal 8 2014 的内容;2014 年 9 月cal {8,9} 2014扩展为cal 8 9 2014(显示 9 月 9 日。)cal {08 2014,09 2014}不是有效的大括号扩展,我不能使用cal {"08 2014", “09 2014”}因为它扩展为cal “08 2014” “09 2014”这两个参数在这里显然没有意义:/我开始质疑大括号扩展的效用......

4

1 回答 1

3

大括号扩展很棒,for 循环也很棒,但是将 printf|sh 添加到您的曲目中,您的状态会很好:

printf "cal %s 2014\n" {8,9}|sh

一个明显的好处是您可以在没有 |sh 的情况下运行它,以查看它是否正确。

您还可以转义空格,以便大括号扩展包括 cal 和 2014:

$ echo cal\ {8,9}\ 2014\;
cal 8 2014; cal 9 2014;

然后通过 sh 管道:

$ echo cal\ {8,9}\ 2014\;|sh
    August 2014
Su Mo Tu We Th Fr Sa
                1  2
 3  4  5  6  7  8  9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
   September 2014
Su Mo Tu We Th Fr Sa
    1  2  3  4  5  6
 7  8  9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
于 2014-09-06T14:53:33.130 回答