Я обнаружил, что задал этот вопрос на неправильном сайте stackexchange.
Чтобы найти файлы, начинающиеся с определенного пути, я могу использовать find <path> ...
Если я хочу найти «вверх», то есть в родительском каталоге, и это родитель, и ..., есть ли эквивалентный инструмент?
В этом случае используется правильное количество точек (../../x.txt или ../../../x.txt?) использовать, например, в make-файле, включая некоторые распространенные функции make-файла, где-то вверх по течению.
Предполагаемое использование для структуры папок, как это:
/
/abc
/abc/dce/efg/ghi
/abc/dce/efg2
$ cd /abc/dce/efg/ghi
$ touch ../../x.txt
$ upfind . -name X*
../../x.txt
$ upfind . -name Y* || echo "not found"
not found
$ touch /abc/dce/efg2/x.txt
$ upfind . -name Y* || echo "not found"
not found
$
Итак, вкратце:
- он должен искать в этой папке, это родитель, это родительский родитель ...
- но не в любом из их братьев и сестер (как «найти» будет)
- он должен сообщать о найденных файлах относительно текущего пути