LINUX BASH下的 大括号数组


LINUX 下的 BASH shell 支持大括号 {} 来模拟数组 比如:

1
touch abc{1,2,3,4}
touch abc{1,2,3,4}

这其实相当于下面四条命令 将会创建四个文件

1
2
3
4
touch abc1
touch abc2
touch abc3
touch abc4
touch abc1
touch abc2
touch abc3
touch abc4

大括量 是不能有多余的空格 的比如

1
2
~$ echo abc{1, 2, 3, 4}
abc{1, 2, 3, 4}
~$ echo abc{1, 2, 3, 4}
abc{1, 2, 3, 4}

但是你可以用双引号来表示 空格不是多余的

1
2
~$ echo abc{" 1"," 2"," 3"," 4"}
abc 1 abc 2 abc 3 abc 4
~$ echo abc{" 1"," 2"," 3"," 4"}
abc 1 abc 2 abc 3 abc 4

这种方式能使命令变得简单 比如想在一个目录下创建几个子目录就可以这样写:

1
mkdir /some/dir/{a,b,c,d}
mkdir /some/dir/{a,b,c,d}

这相当于四条命令:

1
2
3
4
mkdir /some/dir/a
mkdir /some/dir/b
mkdir /some/dir/c
mkdir /some/dir/d
mkdir /some/dir/a
mkdir /some/dir/b
mkdir /some/dir/c
mkdir /some/dir/d

英文: https://helloacm.com/curly-brace-group-in-linux-bash/

GD Star Rating
loading...
本文一共 119 个汉字, 你数一下对不对.
LINUX BASH下的 大括号数组. (AMP 移动加速版本)
上一篇: 测试 Crontab 是否工作的PHP脚本
下一篇: 微博帐号被盗

扫描二维码,分享本文到微信朋友圈
1830?noamp=mobile LINUX BASH下的 大括号数组 LINUX 小技巧

评论