$PATH 環境変数が認識されないようです。

$PATH 環境変数が認識されないようです。

Debian Wheezyを新しくインストールし、ここにzshをインストールしました。数日後、TeX Live 2014のバニラのインストールを完了し、$ PATHに必要なバイナリパスを追加しました。スクリプトに簡単にアクセスできる場所に置きたいです~/bin

私のパスは次のとおりです

~/bin:/opt/texbin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

今TeX Liveで何かを実行したい場合は簡単です。

% which pdflatex
/opt/texbin/pdflatex

問題ありません。しかし、で何かを実行しようとすると~/bin...

% which hello_world
hello_world not found

だからもう一度確認しました。

% ls -l ~/bin
total 18
-rwxr-xr-x 1 bozbalci bozbalci 5382 Sep  8 00:28 hello_world

~/binそして、実行権限が設定されていると、hello_worldが正しく機能していることがわかりますが、動作しませんrehash

ベストアンサー1

次のシェルコマンドで

PATH=~/bin:/opt/texbin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

シェルコマンドが実行されると、チルダはホームディレクトリに展開されます。したがって、結果の値PATH /home/theconjuring/bin:/opt/texbin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

チルダが引用符(PATH="~/bin:…")内にないことを確認してください。それ以外の場合、チルダが現在の値の前にディレクトリを追加するには、次のようにPATHします。

PATH=~/bin:$PATH

通常、zsh以外のシェルでは$PATH二重引用符しかありません値にスペースやその他の特殊文字が含まれていると中断されます。が、職場では安全です。ただし、forをexport作成する必要があります(すでに環境にあるのでwithはexport PATH=~/bin:"$PATH"必要ありませんが)。 zshでは、変数が空でない限り二重引用符は必要ありませんが、in is setの場合はorによって処理されます。exportPATHPATH.profile/bin/sh/bin/bash

PATHただし、 に設定すると~/.pam_environmentホームディレクトリを使用~したり表現することはできません。$HOMEファイルはシェルから解析されず、単純な行のNAME=valueリストです。したがって、フルパスを作成する必要があります。

おすすめ記事