如何解决从定义的字符的第一次出现到最后一次出现,选择并替换字符串
我希望以以下格式从/ etc / passwd打印用户名和真实姓名: johnwick3 = John Wick
/ etc / passwd中的条目如下:
johnwick3:x:15905:10513:John Wick:/ home / john / folder:/ bin / bash
每一行的数字都不同。
所以我将所有内容提取到名称结尾:
$"{System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.ToString()}.{MethodBase.GetCurrentMethod().Name}"
这给了我
johnwick3:x:15905:10513:John Wick
如何提取第一个冒号到最后一个冒号之间的所有内容,并替换为“ =” ?
解决方法
以下内容足以显示内容:
grep '/home' /etc/passwd | cut -d: -f1,5 | tr ':' '='
但是在脚本中,我会:
awk -F: -v OFS== '$6 ~ "^/home/"{print $1,$5}' /etc/passwd
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。