web-dev-qa-db-ja.com

Linuxで「sqlcmd sqlcmd:コマンドが見つかりません」を取得しますか?

sqlcmdを実行するたびに、「コマンドが見つかりません」というメッセージが表示されます

sqlcmd -S localhost -U SA -P '<YourPassword>'
sqlcmd: command not found

どうすれば解決できますか?

5
Evan Carroll

これを解決するには2つの方法があります。

  1. 非常識な方法Linuxの使い方を知らない人のために、 マニュアルで推奨されている 、ディレクトリを追加環境変数PATHに。
  2. Linux FHSに従う正しい方法は、すでにパスにあるディレクトリに実行可能ファイルをシンボリックリンクします。

非常識な方法

ヒント:チュートリアルのアドバイスに従わないでくださいチュートリアルの(ここで再現) *を見つけることができます*。チュートリアルは次のように述べています。

オプション/opt/mssql-tools/bin/[〜#〜] path [〜#〜]bashシェルの環境変数。

ログインセッションのためにbashシェルからsqlcmd/bcpにアクセスできるようにするには、[〜#〜] path [ 〜#〜]〜/ .bash_profileファイルで次のコマンドで:

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile

sqlcmd/bcpをインタラクティブ/非ログインセッションのbashシェルからアクセスできるようにするには、[〜# 〜] path [〜#〜]〜/ .bashrcファイルで次のコマンドを使用:

echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc

これは機能しますが、それはかなり劣ります。

正気法

Filesystem Hierarchy Standard に従ってください

Sudo ln -s /opt/mssql-tools/bin/* /usr/local/bin/

これは postinstスクリプト に含まれている必要がありますが、ご存知のとおり... Microsoftなど

9
Evan Carroll