我有一个包含命令结果的变量,whereis ls
它是:
ls: /bin/ls /usr/share/man/man1/ls.1.gz
我需要搜索此变量并检索此特定部分,并将其保存到新变量newVar中:
/bin
我已经尝试过echo $var | awk '{print $2}'
但是这很抢手/bin/ls
然后,我需要搜索$ PATH变量以找到子字符串/ bin :(我以某种方式将newVar与之匹配),并以某种方式删除了$ PATH的这一部分并更新了$ PATH以反映该更改。bash脚本非常新,任何帮助将不胜感激。
您可能只使用dirname
和which
:
dirname "$(which ls)"
这把我的袜子打断了,谢谢!
很高兴它有所帮助!PS:还有
basename
,相反,它为您提供了没有路径的文件名。