SQLite3 v3.8がインストールされていますが、Macターミナルはデフォルトでまだ古いバージョン3.6を実行しています。

SQLite3 v3.8がインストールされていますが、Macターミナルはデフォルトでまだ古いバージョン3.6を実行しています。

SQLite3 v3.6がプリインストールされているOS X 10.6.8を実行しているMacがあります。 homebrewを使用してv3.8をインストールしました。ただし、端末に「sqlite3」と入力すると、以前にインストールされた以前のバージョンは引き続き実行されます。助けが必要ですか?

PATH変数がこれに関連しているかどうかはわかりませんが、echo $PATHを実行すると、次のようになります。/usr/local/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/ :/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

SQLite3の新しいバージョンは次のディレクトリにあります。/usr/local/Cellar/sqlite

また、バイナリ実行可能ファイルをデスクトップにダウンロードしましたが、デスクトップでクリックすると機能しますが、端末では機能しないことを追加する必要があります。

助けてくれてありがとう。

答え1

slmのソリューションは実際には正しくありません(動作しますが)。 Homebrewを使用するときは$ PATHに追加しないでください。代わりに $PATH (既に行った操作) に/usr/local/Cellar/*追加し、 Cellar の項目を .意図的にHomebrewを使用すると、これを簡単に実行できます。/usr/local/bin/usr/local/bin

brew link sqlite

必要なリンクが自動的に作成されます。 (今回はHomebrewはこれを自動的には実行しません。sqliteはkegのみなので手動で行う必要があります。)

注/通知として/usr/local/binシステムパスに追加しないでください。ユーザーパスにのみ追加する必要があります。これは、Appleが提供するsqliteを必要とするプログラムがHomebrewが提供するバージョンを見つけて問題を引き起こすのを防ぐためです。

答え2

$パス

PATHはい、次のように変数を設定する必要があります。

$ export PATH=/usr/local/Cellar/sqlite:/usr/local/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin

その行は読み取りが少し難しいことがあるため、ここでは各パスが独自の行にあるコロンで区切られています。

$ awk -v addPath="$1" 'BEGIN{RS=":";ORS=addPath "\n"}{$1=$1}1' <<< $PATH
/usr/local/Cellar/sqlite
/usr/local/bin
/Library/Frameworks/Python.framework/Versions/2.7/bin
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin
/usr/X11/bin

これは、シェルがプロンプトに入力したばかりの内容を検索する$PATHディレクトリのリストです - コロン()で区切られます。:順序が重要であるため、sqlite複数の場所に表示される場合、最初に見つかったディレクトリはそのディレクトリが使用された場所です。

そのものはどこにありますか?

このtypeコマンドを使用して、特定のアプリケーションがどこから来たのかを確認できます。

はい

$ type -a sqlite3 
sqlite3 is /usr/bin/sqlite3

これがスイッチで使用される方法であり、-aすべての項目を表示します。

$ type -a ls
ls is aliased to `ls --color=auto'
ls is /bin/ls

関連情報