「な」さま、ありがとうございます。
$ for d in /*; do if [ -d $d ]; then echo $d; find $d -name cygwin.bat; fi; done
/bin
/etc
/home
/lib
/sbin
/tmp
/usr
/usr/src/ucl-1.01-1/B/win32/cygwin.bat
/var
となりました。
見つかったディレクトリとルートにある cygwin.bat をそれぞれlsすると、
$ ll /usr/src/ucl-1.01-1/B/win32/cygwin.bat
-rwxrwxrwx 1 Administ mkgroup_ 769 Jan 3 2002 /usr/src/ucl-1.01-1/B/win32/cygwin.bat
$ ll /cygwin.bat
-rwxrwxrwx 1 Administ mkgroup_ 51 Dec 5 15:28 /cygwin.bat
です。
見つかった win32/cygwin.bat まで1つづつ上にfindすると、
$ find /usr/src/ucl-1.01-1/B/win32/ -name cygwin.bat
$ find /usr/src/ucl-1.01-1/B/ -name cygwin.bat
$ find /usr/src/ucl-1.01-1/ -name cygwin.bat
/usr/src/ucl-1.01-1/B/win32/cygwin.bat (最後以外は結果省略)
と、この3つはすぐ(5〜10秒くらいで)結果が返り、
$ find /usr/src/ -name cygwin.bat
$ find /usr/ -name cygwin.bat
/usr/src/ucl-1.01-1/B/win32/cygwin.bat (最後以外は結果省略)
この2つは結果が返るのに異常に長く時間(2分くらい)がかかりました。
ルートは相変わらず、
$ find / -name cygwin.bat
$ find // -name cygwin.bat
find: ./.. changed during execution of find (最後以外は結果省略)
と、問題が起きます。
問題が起きてるルートディレクトリ直下にある他のファイル名 cygwin.ico でも試してみました。
$ for d in /*; do if [ -d $d ]; then echo $d; find $d -name cygwin.ico; fi; done
/bin
/etc
/home
/lib
/sbin
/tmp
/usr
/usr/src/cygwin.ico
/var
となりました。
見つかったディレクトリとルートにある cygwin.ico をそれぞれlsすると、
$ ll /usr/src/cygwin.ico
-rwxrwxrwx 1 Administ mkgroup_ 766 Oct 26 2000 /usr/src/cygwin.ico
$ ll /cygwin.ico
-rwxrwxrwx 1 Administ mkgroup_ 766 Nov 28 16:18 /cygwin.ico
です。
やはり、
$ find /usr/src/ -name cygwin.ico
$ find /usr/ -name cygwin.ico
/usr/src/cygwin.ico (最後以外は結果省略)
に異常に長い時間(2分くらい)がかかりました。
ルート直下のdir名でfindしてみた結果も張っておきます。
$ find / -type d -name bin
/bin
find: ./.. changed during execution of find
/bin だけ途中まで動いてるようです。
他は
$ find / -type d -name etc
$ find / -type d -name home
$ find / -type d -name lib
$ find / -type d -name sbin
$ find / -type d -name tmp
$ find / -type d -name usr
$ find / -type d -name var
find: ./.. changed during execution of find (最後以外は結果省略)
と皆同じ結果です。
|