PWDの外側のファイルを参照するPWDですべてのシンボリックリンクを見つける方法は?un un

StackOverflow https://stackoverflow.com/questions/9446571

  •  12-11-2019
  •  | 
  •  

質問

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
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top