Linux共通コマンド --(1) 環境変数
1.lddコマンド
ldd用来打印或者查看程序运行所需的共享库(访问共享对象依赖关系),常用来解决程序因缺少某个库文件而不能运行的一些问题。
一般的に使用されるコマンドは次のとおりです。
- ls コマンドで必要な動的ライブラリを表示します。
$ which ls
- libstdc++.so.6 ダイナミック ライブラリが依存するパッケージの詳細情報を表示します。依存パッケージが見つからない場合は、後で「見つかりません」と表示されます。
$ whereis libstdc++.so.6
2. 環境変数を設定する
2.1 Linux 中の PATH、LIBRARY_PATH、LD_LIBRARY_PATH
PATH
PATH は、可执行文件搜索路径
コロン「:」で区切られたディレクトリのリストを含む、保存されたシステム環境変数です。コマンドが実行されると、オペレーティング システムはこれらのディレクトリ内で対応する実行可能ファイルを検索し、見つかった場合はそれを実行します。たとえば、ls コマンドがコマンド ラインで実行されると、PATH 変数にリストされているディレクトリで ls コマンドが順番に検索され、見つかった場合は実行されます。見つからない場合は、コマンドが見つからないことを示すメッセージが表示されます。PATH 環境変数は次の方法で変更できます。
- 一時的な変更は終了すると無効になります。
エクスポート PATH=$PATH:/exe_path/bin
- 永久的な変更:
# 修改 ~/.bashrc 或 /etc/profile
export PATH=$PATH:/exe_path/bin
# 或者修改 /etc/environment
PATH=$PATH:/exe_path/bin
# 生效
source ~/.bashrc
或者
source /etc/profile
或者
source /etc/environment
このコマンドは、/exe_path/bin ディレクトリをシステムの PATH 変数に追加します。
LIBRARY_PATH
LIBRARY_PATH は、保存された编译器查找库文件搜索路径
システム環境変数です。ソース コードをコンパイルするとき、コンパイラはこれらのディレクトリ内で、実行可能ファイルにリンクする指定されたライブラリ ファイルを探します。LIBRARY_PATH 環境変数は次の方法で変更できます。
- 一時的な変更:
エクスポート LIBRARY_PATH=$LIBRARY_PATH:/compile_lib_path/lib
- 永久的な変更:
# 修改 ~/.bashrc或系统级别的/etc/profile
export LIBRARY_PATH=/compile_lib_path/lib:$LIBRARY_PATH
# 生效
source ~/.bashrc
或者
source /etc/profile
このコマンドは、ディレクトリ /compile_lib_path/lib をシステムの LIBRARY_PATH 変数に追加します。後でプログラムをコンパイルするときに、コンパイラはディレクトリ /compile_lib_path/lib でライブラリ ファイルを検索します。
LD_LIBRARY_PATH
LD_LIBRARY_PATH は存储运行时共享库文件搜索路径
システム環境変数です。実行可能プログラムを実行するとき、ダイナミック リンカー (ld.so) はこれらのディレクトリ内で対応する共有ライブラリ ファイルを探します。これらのライブラリ ファイルが見つかると、プログラムにロードされます。LD_LIBRARY_PATH 環境変数は次の方法で変更できます。
- 一時的な変更:
エクスポート LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
- 永久的な変更:
修改 ~/.bashrc 或者 ~/.bash_profile文件
export LD_LIBRARY_PATH=/ld_path/bin:$path
# 同步
source ~/.bashrc
或者
source ~/.bash_profile
このコマンドは、/ld_path/bin ディレクトリをシステムの LD_LIBRARY_PATH 変数に追加します。後でプログラムを実行すると、ダイナミック リンカは /ld_path/bin ディレクトリで共有ライブラリを検索します。
2.2 LD_LIBRARY_PATH と LIBRARY_PATH の違い
LIBRARY_PATH
環境変数は、编译期间
プログラムがダイナミック リンク ライブラリを検索するときに、共有ライブラリを見つけるためのパスを指定するために使用されます。たとえば、gcc がコンパイルするダイナミック リンク ライブラリのディレクトリを指定します。
LD_LIBRARY_PATH
環境変数は、运行期间
プログラムがダイナミック リンク ライブラリをロードして検索するときに、システムのデフォルト パス以外のパスを指定するために使用されます。LD_LIBRARY_PATH で指定されたパスは、システムのデフォルト パスよりも先に検索されることに注意してください。
2.3 注意事項
環境変数に複数のパスが設定されている場合、オペレーティング システムは按照指定的顺序
ダイナミック リンク ライブラリを順番に検索することに注意してください。したがって、プログラムの動作効率を向上させるために、最もよく使用されるパスを最初に配置する必要があります。
2.4 現在使用されている環境変数を表示する
次のコマンドを使用して、現在の環境情報を表示できます。
輸出
2.5 指定された順序でパスを設定する
追加予定
3. サーバーの文字セットを設定する
3.1 文字セットとは
文字セット (文字セット) はエンコーディング (エンコーディング) とも呼ばれ、是用于表示文本的一组字符和它们在计算机中的表示方式。
異なる文字セットには異なる文字、表現方法、サポートされる言語が含まれるため、異なる文字セットで同じ文字を使用すると、通常は異なる結果になります。Linux システムでは、デフォルトの文字セットは Unicode 文字セットの実装である UTF-8 です。
3.2 現在の文字セットを表示する
echo $LANG
3.3 現在の文字セットを変更する
一般的に使用される文字セット:
GB2312
GBK
UTF-16
UTF-32
UTF-8(常用)
3.3.1 文字セットを一時的に変更する
LANG=zh_CN.UTF-8
3.3.2 永続化保存の文字エンコーディング
- 設定ファイルを変更します: /etc/locale.conf
- コマンドによる文字セットエンコーディングの変更
localectl set-local LANGUAGE=zh_CN.utf8