mac:コマンドラインツールのインストールなどを表示

3473 ワード

npmなどのソフトウェアの関連パスを検索しますか?
インストールパスを表示します.whichコマンドはPATH環境変数に基づいて検索するだけです.
which nginx
# /usr/local/bin/nginx
which node
# /Users/luofang/.nvm/versions/node/v12.14.1/bin/node
which nginx
# /usr/local/bin/nginx
which npm
# /Users/luofang/.nvm/versions/node/v12.14.1/bin/npm

whereisは、標準に従ってファイルパスを検索します.探しているのはbinディレクトリの下のファイルパスです.
whereis java
# /usr/bin/java
whereis python
# /usr/bin/python

find:システム内の指定ファイルの検索
find / -name xxx

ps:プロセスを検索する方法で対応するパケットのパスを見つける
ps -ef|grep mysql
#       
pgrep mysql

locate:locateの機能はfindと似ています.すべてのパスの下にあるmysqlファイルを検索します.
locate mysql

システムグローバル変数path構成の表示
Macシステムの環境変数は、ロード順:/etc/profile【システムレベル、ファイル、システム起動でロード】【このファイルの修正は推奨しない】/etc/paths【システムレベル、ファイル、システム起動でロード】【グローバル推奨このファイルの修正】~/.bash_profile【ユーザーレベル】【ここには既に存在しているので、後で探さない】~/.bash_login【ユーザレベル】~/.profile【ユーザレベル】~/.bashrc【ユーザーレベル】【上記ルールは制限されず、bash shellが開いたときにのみロードされます】
cat /etc/paths
#   
/usr/local/bin
/usr/bin
/bin
/usr/sbin
/sbin

パスの表示
echo $PATH
/Users/luofang/.nvm/versions/node/v12.14.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/share/dotnet:~/.dotnet/tools:/Library/Frameworks/Mono.framework/Versions/Current/Commands

上に1つあります.nvmパスは、システム内のnodeがnvmによってバージョン管理されていることがわかります.現在のnodeバージョンはv 12である.14.1.nodeコマンドを実行すると、$PATHという指定されたパスにデフォルトで移動してtoolを検索し、スクリプトを実行します.
subl /Users/luofang/.nvm/versions/node/v12.14.1/bin/node

これはシステム実行ファイルであることがわかります.
subl /Users/luofang/.nvm/versions/node/v12.14.1/bin/node
#       
#!/usr/bin/env node
;(function() {
     
	# ...
	 var npm = require('../lib/npm.js')
	 # ...
	 npm.load(...);
})()