所以我有一个用户名列表,例如:
user1
user2
user3
我想申请id
他们每个人并得到类似的东西:
uid=100(user1) gid=5(g1) groups=5(g1),6(g6),7(g10)
.
.
我怎样才能做到这一点?请注意,该列表是另一个命令 say 的输出mycommand
。
所以我有一个用户名列表,例如:
user1
user2
user3
我想申请id
他们每个人并得到类似的东西:
uid=100(user1) gid=5(g1) groups=5(g1),6(g6),7(g10)
.
.
我怎样才能做到这一点?请注意,该列表是另一个命令 say 的输出mycommand
。
使用
xargs
:例子:
您还可以在 bash 中循环输入:
xargs
将输入转换为命令的参数。该-L1
选项告诉xargs
使用每一行作为调用命令的唯一参数。使用 bash,您可以将输出行捕获到数组中:
然后遍历它们
这不像 xargs 那样简洁,但如果你需要这些行不止一件事,它非常有用。
首先我测试了
find/egrep
确保我得到了我想要的列表,然后我将它作为一个文件列表添加到了tar
命令的末尾。希望这会有所帮助。
find .
只是找到当前目录下的所有文件,但如果您愿意,您可以指定一个子目录或完全不同的路径。egrep
只允许grep
使用管道 ( ) 分隔多个搜索字符串|
。