如果存在用户名,则必须在该用户名上添加数字2,如果该用户名也存在,则必须在其上添加数字3,依此类推...(因此,如果John存在,则程序必须添加John2,并且如果存在)同样,它也必须添加John3等。)然后,我记住的每个用户都会被记住。在bash中最短最简单的方法是什么?
2 回答
摇曳的蔷薇
TA贡献1793条经验 获得超6个赞
一些有用的部分:
for n in "" {9..11}; do egrep -q "^stefan${n}\b" /etc/passwd && echo "name${n} " || echo "unknown name${n}"; done
name
unknown name9
unknown name10
unknown name11
遍历数字,查找(可能生成的)用户名,如果知道或未知,则以不同的方式进行反应,粘贴名称和数字。
哆啦的时光机
TA贡献1779条经验 获得超6个赞
假设users.txt是:
joe
jimmy
foo
jimmy
bar
jimmy
然后你可以使用awk
awk 'cnt[$0]++{$0=$0 cnt[$0]-1} 1' users.txt
产生输出:
joe
jimmy
foo
jimmy1
bar
jimmy2
- 2 回答
- 0 关注
- 336 浏览
添加回答
举报
0/150
提交
取消