PWDの外側のファイルを参照するPWDですべてのシンボリックリンクを見つける方法は?un un
質問
DIR byコマンドですべてのリンクを見つけることができます:
find . -type l
.
しかし、私はPWDの外側のファイルのみを参照するリンクが必要です。 誰かがそれをする方法を言うことができますか? ありがとう。
解決
私は次のようなことをするでしょう:
find . -type l -exec readlink -f '{}' \; | grep -v "^`readlink -f ${PWD}`"
.
readlink -f
はファイルの正規パスを与えます。
どのリンクがそれらのパスを指し示しているのかを覚えたい場合は、これを行う方法があります。
find . -type l -exec sh -c 'echo $(readlink -f "{}") "<-- {}"' \; \
| grep -v "^$(readlink -f ${PWD})"
.
Linked PathとSymlinkのパスの両方を表示する必要があるため、grep
スイッチが複雑です。
他のヒント
イッチは次のようなことをするでしょう:
for link in `find . -type l`; do X=$(dirname `readlink $link`); if [ $X != '.' ]; then echo $link; fi ; done
. 所属していません StackOverflow