如何扩展ash中的字母/数字列表?

保罗

在busybox中,默认shell是ash,因此bash中一些熟悉的技巧不可用。我想做的一件事是展开一个字母列表,例如{a..z},它将扩展为a b c d e f g h i j k l m n o p q r s t u v w x y zbash。还有另一种方法来处理这种灰烬吗?

斯蒂芬·查泽拉斯(Stephane Chazelas)

POSIXly(和busybox)以及在基于ASCII的系统上(我认为在EBCDIC系统上从来没有发现busybox):

letters() { awk 'BEGIN{for(i=97;i<123;i++)printf "%c\n", i}'; }

将扩展到该字母列表,每行一个,所以假设您尚未修改$IFS

cmd $(letters)

将是将该列表作为单独的参数传递给的一种方法cmd正如你所用做ksh93/ zsh/bashcmd {a..z}

这几乎不是一个改进

letters() { printf '%s\n' a b c d e f g h i j k l m n o p q r s t u v w x y z; }

尽管。为了能够完成的功能foo{a..z}bar,您可以定义:

letters() { printf "${1-%s\n}" a b c d e f g h i j k l m n o p q r s t u v w x y z; }

相反,将其称为:

cmd $(letters 'foo%sbar\n')

您可以通过执行以下操作来扩展这种方法:

format() { awk -v format="$1" '{printf format, $0}' ;}

然后执行:

$ seq 97 100 | format 'foo%cbar\n'
fooabar
foobbar
foocbar
foodbar
$ seq 4 | format '%04d\n'
0001
0002
0003
0004

(尽管后者也可以写成seq -w 0004

seq不是POSIX命令,但busybox它附带了它。

请注意,busybox默认情况下sh基于,ash但是可以在构建时配置为使用hush不支持括号扩展基于-shell。但这仅仅是csh样式{a,b},而不是zsh样式{1..10}{a..z}或者是ksh93 / zsh / bash中更高级的形式。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在sed中,如何表示“字母数字或_或-”

来自分类Dev

基于子列表中的字母数字字符串的列表列表的自然排序?

来自分类Dev

如何在Swift中找出字母是字母数字还是数字

来自分类Dev

在Coldfusion中,如何按字母顺序然后按数字顺序排列列表

来自分类Dev

如何检查输入的字母是否在列表中?

来自分类Dev

如何按字母顺序对字母数字列表进行排序

来自分类Dev

如何排序字符串列表包含在Java中的数字和字母?

来自分类Dev

如何在列表文本中将数字与字母分开

来自分类Dev

将字母与Jython中列表中的对应数字匹配

来自分类Dev

将列表项中的字母替换为数字

来自分类Dev

如何从Excel中的字母数字文本中删除前导零

来自分类Dev

如何根据数字对字母数字列表进行排序

来自分类Dev

如何在R中的字母数字字符串中获取数字/字母索引模式?

来自分类Dev

根据子列表中的字母数字字符串对列表列表进行自然排序?

来自分类Dev

在Python中按字母顺序打印列表(带数字)

来自分类Dev

如何确定列表中是否包含字母

来自分类Dev

如何在Swift中找出字母是字母数字还是数字

来自分类Dev

如何使用javascript对字母数字列表进行排序

来自分类Dev

在Python中为字母数字迭代数组/列表

来自分类Dev

如何在Python中将列表中的字母更改为其对应的字母数字

来自分类Dev

如何在shell中按数字对字母数字进行排序

来自分类Dev

JS使用列表中的预先安排的数字/字母,而不是生成字母/数字?

来自分类Dev

如何从列表中的元素获取字母

来自分类Dev

如何在VBA中的数字之间扩展

来自分类Dev

计算列表中数字和字母的数量?

来自分类Dev

python:如何对字母和数字列表进行排序

来自分类Dev

如何将列表中的数字和字母字符串转换为整数?

来自分类Dev

如何比较列表中的数字

来自分类Dev

如何从 cassandra 列中的字母数字值中删除字符?

Related 相关文章

  1. 1

    在sed中,如何表示“字母数字或_或-”

  2. 2

    基于子列表中的字母数字字符串的列表列表的自然排序?

  3. 3

    如何在Swift中找出字母是字母数字还是数字

  4. 4

    在Coldfusion中,如何按字母顺序然后按数字顺序排列列表

  5. 5

    如何检查输入的字母是否在列表中?

  6. 6

    如何按字母顺序对字母数字列表进行排序

  7. 7

    如何排序字符串列表包含在Java中的数字和字母?

  8. 8

    如何在列表文本中将数字与字母分开

  9. 9

    将字母与Jython中列表中的对应数字匹配

  10. 10

    将列表项中的字母替换为数字

  11. 11

    如何从Excel中的字母数字文本中删除前导零

  12. 12

    如何根据数字对字母数字列表进行排序

  13. 13

    如何在R中的字母数字字符串中获取数字/字母索引模式?

  14. 14

    根据子列表中的字母数字字符串对列表列表进行自然排序?

  15. 15

    在Python中按字母顺序打印列表(带数字)

  16. 16

    如何确定列表中是否包含字母

  17. 17

    如何在Swift中找出字母是字母数字还是数字

  18. 18

    如何使用javascript对字母数字列表进行排序

  19. 19

    在Python中为字母数字迭代数组/列表

  20. 20

    如何在Python中将列表中的字母更改为其对应的字母数字

  21. 21

    如何在shell中按数字对字母数字进行排序

  22. 22

    JS使用列表中的预先安排的数字/字母,而不是生成字母/数字?

  23. 23

    如何从列表中的元素获取字母

  24. 24

    如何在VBA中的数字之间扩展

  25. 25

    计算列表中数字和字母的数量?

  26. 26

    python:如何对字母和数字列表进行排序

  27. 27

    如何将列表中的数字和字母字符串转换为整数?

  28. 28

    如何比较列表中的数字

  29. 29

    如何从 cassandra 列中的字母数字值中删除字符?

热门标签

归档