This question already has answers here:
How to use sed/grep to extract text between two words?
(11个答案)
3个月前关闭。
我需要从bash脚本获得输出的特定部分。我有一个bash脚本,它已经显示了json文件的位置,但是我还需要json文件所有者的用户名。
我试过了,但没有成功。
files=$(find /home -name file.json -print)
echo "$files" >> userswithjson.txt
cat userswithjson | grep -o '/home/*'

预期产量:cat userswithjson.txt | grep -o '/home/*'实际产量:user
/home/user/file.json的内容:userswithjson.txt

最佳答案

您可以简单地使用awk快速解析userswithjson文件并输出文件路径的userid部分。这里有一些代码可以帮助您实现这一点:

awk -F/ '{print $3}' userswithjson

-F/设置awk的IFS(输入字段分隔符)。Awk根据IFS将每个输入行分解成字段。这些字段是数字名称(如$3)。

关于linux - 如何使用bash脚本获取输出的特定部分,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57493923/

10-10 17:49