11
1
I found I asked this question on the wrong stackexchange site.
To find files starting from a certain path, I can use find <path> ...
. If I want to find 'upwards', i.e. in the parent directory, and it's parent, and..., is there an equivalent tool?
The use case is knowing the right number of dots (../../x.txt or ../../../x.txt?) to use in e.g. a makefile including some common makefile functions somewhere upstream.
Intended usage for a folder structure like this:
/
/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
$
So in short:
- it should search on this folder, it's parent, it's parent's parent...
- but not in any of their siblings (like 'find' would)
- it should report the found file(s) relative to the current path
Possible same on unix SE: http://unix.stackexchange.com/questions/6463/find-searching-in-parent-directories-instead-of-subdirectories
– Ciro Santilli 新疆改造中心法轮功六四事件 – 2015-03-30T10:26:24.560It appears from the link that you already wrote a script that solved your problem... – Matt – 2012-07-31T12:38:18.143
@Matt: yes, but I'm allways try to find one better answer, and this is a better forum to do so. – xtofl – 2012-07-31T12:50:42.100
Ah. Actually, I would think the best forum would be SO, wouldn't it? – Matt – 2012-07-31T12:52:45.523