从 cat 输出中获取动态定位的子字符串

从 cat 输出中获取动态定位的子字符串

我在脚本中的命令看起来像这样:

echo "- user:$(cat /var/users.txt)" >>  /opt/tag/user_new.txt

问题是users.txt包含这样格式的用户集[电子邮件受保护]ETC。

然而我想要的只是@ie之前的部分约翰·戴维斯,所以我附加的字符串user_new.txt是 this - user:john-davis

基本上是firstIndexOf 和子字符串以及echo 的bash 版本。有人可以帮助我如何通过单个命令来实现这一点吗?

答案1

这些大括号看起来不对——我假设你打算扩展进程。

我会跳过回声,并且也会处理扩展。就像是:

awk '-F@' '{ print "- user:" $1 }' /var/users.txt >> /opt/tag/user_new.txt

相关内容