1

我想找到文件夹的路径并将其存储到变量中

 #!/bin/bash
 howdy=$(whereis yum.repos.d)
 howdy=$howdy"/remi.repo"
 echo $howdy

问题是当我想使用变量 $howdy 时,它会输出

 yum.repos: /etc/yum.repos.d/remi.repo

我希望它只是路径

 /etc/yum.repos.d/remi.repo

所以我可以在我的代码中使用它

4

5 回答 5

3

您可以擦除字符串的第一部分:

echo ${howdy##*: }

或者你可以通过管道cut -d' ' -f2

于 2012-08-21T12:43:48.647 回答
3

您可以使用参数扩展:

${howdy#yum.repos: }
于 2012-08-21T12:44:13.893 回答
1

您可以使用awk格式化输出:

howdy=$(whereis yum.repos.d| awk '{print $2}')

完整代码:

#!/bin/bash
howdy=$(whereis yum.repos.d| awk '{print $2}')
howdy=$howdy"/remi.repo"
echo $howdy

这将输出:/etc/yum.repos.d/remi.repo

于 2012-08-21T12:46:24.070 回答
0

怎么样:

howdy=$(find /etc -type f -name remi.repo)
于 2012-08-21T12:46:02.003 回答
0

whereis yum.repos.d | awk -F: '{print $2}'将剥离第一部分

于 2012-08-21T12:47:33.107 回答