如何使用嵌套命令编写函数

如何使用嵌套命令编写函数

我正在尝试编写一个 find 和 cd 函数,如下所示:

findcd () {
        cd "$(dirname "$(find '$1' -type '$2' -name '$3')")"
}

像这样被调用:

find . f [FILE_NAME]

但它看到了美元符号,并期待更多的争论来反对执行里面的内容。我刚刚开始编写别名和函数,所以任何建议都会非常有帮助!

答案1

尝试这个:

findcd () {
        cd "$(dirname "$(find "$1" -type "$2" -name "$3")")"
}

您最初尝试的问题是您将变量单引号引起来,因此它们没有被扩展。另请注意,如果您有多个find结果,则此方法将不起作用。

相关内容