UNIX下如何从两个路径中获取一个文件?

UNIX下如何从两个路径中获取一个文件?

我正在尝试从两个不同的路径获取一个文件。我使用了下面的命令,似乎执行正常,但没有输出。

find . \( -path "/usr/local" -o -path "/user/local/archive" \) -name "xyz.csv"

你能帮我解决这个问题吗?

答案1

没有得到输出的原因:

  • 点是搜索的根目录,因此如果您不在根目录中,则搜索树中.不会有/usr/local
  • -path选项必须匹配整个路径,包括要查找的对象,因此如果您给出了一个,则-name该名称也需要成为 的一部分(或者在末尾-path使用 globbed )*

find需要多个参数作为搜索路径,因此您可以像 @Kamaraj 在他的评论中写道的那样进行搜索。在您的情况下,这甚至是不必要的,因为 find 还会在子目录中搜索,因此find /usr/local -type f -name xyz.csv也会找到/usr/local/archiv/xyz.csv

相关内容