Bash-linux脚本:反复将变量放在其他变量之后
我有两个变量:Bash-linux脚本:反复将变量放在其他变量之后,linux,bash,Linux,Bash,我有两个变量: GrepMap=$( grep -rl "string" ~/Downloads | cut -d/ -f2 ) GrepDir=$( grep -H -r "string" ~/Downloads ) 接下来我想给他们看 echo "$GrepMap : $GrepFile 如果他在3个不同的地图/文件中找到字符串 然后我的输出是这样的: Portfolio_Macht Portfolio_Macht Project_Macht : README.md LES10 ind
GrepMap=$( grep -rl "string" ~/Downloads | cut -d/ -f2 )
GrepDir=$( grep -H -r "string" ~/Downloads )
接下来我想给他们看
echo "$GrepMap : $GrepFile
如果他在3个不同的地图/文件中找到字符串
然后我的输出是这样的:
Portfolio_Macht
Portfolio_Macht
Project_Macht : README.md LES10 index.html
但我希望它是这样的:
Portfolio_Macht : README.md
Portfolio_Macht : LES10
Project_Macht : index.html
有人能帮忙吗?谢谢 问题在于,您正在
echo
ing一个多行字符串后跟另一个多行字符串,但您要做的是将两个多行划线分别粘贴在各自的列中。我可以想出两种方法来解决这个问题。最简单的方法是使用粘贴命令:
paste <(echo "$GrepMap") <(echo "$GrepFile")
说明:使用/
作为字段分隔符,然后打印倒数第二个字段”:“
最后一个字段。问题在于,您正在回送一个多行字符串,然后是另一个多行字符串,但您要做的是将两个多行划线分别粘贴在各自的列中。我可以想出两种方法来解决这个问题。最简单的方法是使用粘贴命令:
paste <(echo "$GrepMap") <(echo "$GrepFile")
说明:使用/
作为字段分隔符,然后打印倒数第二个字段:
最后一个字段。你能发布个人grep
命令的输出吗请提供一个,我们可以自己测试它。你能发布个人grep
命令的输出吗请提供一个,我们可以自己测试它吗?好的建议,但是如果你要使用awk
为什么还要麻烦grep呢?使用awk的模式匹配功能仅将打印应用于匹配的行,并抑制其余行。这是一个很好的建议,但是如果您要使用awk
为什么还要使用grep呢?使用awk的模式匹配功能,仅对匹配的行应用打印,并抑制其余行。