$ locate pytest
pipでpytestをインストールした際、whichとwhereisでpytestを探しても見つけられなかった
pipでアンインストールしようとしたら
$ python -m pip uninstall pytest
Found existing installation: pytest 6.2.4
Uninstalling pytest-6.2.4:
Would remove:
/Users/sakuraisusumu/.local/bin/py.test
/Users/sakuraisusumu/.local/bin/pytest
/Users/sakuraisusumu/.local/lib/python3.6/site-packages/_pytest/*
/Users/sakuraisusumu/.local/lib/python3.6/site-packages/pytest-6.2.4.dist-info/*
/Users/sakuraisusumu/.local/lib/python3.6/site-packages/pytest/*
Proceed (Y/n)?
となり、/Users/sakuraisusumu/.local/bin/pytest にあることがわかった
これはこれで解決だが、
UNIXコマンドに検索があったはず(使ったことがなかった)と思いだし
findとlocateでpytestを探してみた
findは使い物にならない
locateはあらかじめデータベースを作っておくので全検索に近い
ところがだ
/Users/sakuraisusumu/.local/bin/pytest
が引っかからない
なぜだ?
locateを調べる
GNU版locateはfindutilsに入っているので
$ brew install findutils
によりインストールできる
glocateでpytestを検索するも変わらない
locateがデータベースをつくる歳にすべての領域を範囲とするわけでないことが判明
パーミッションが700である自分のディレクトリィの下は検索しない
そうだ
ということでHOMEにあるディレクトリでパーミッションが700のものを755に変更して
データベースをつくりなおしたところ今度は
/Users/sakuraisusumu/.local/bin/pytest
が見つかった
おかげでlocateについてだいぶわかった