0

Ubuntuにこのようなファイルはありませんが、〜/.bash_profileファイルを使用してPATHにディレクトリを追加したいと思います。私は次のコードを持っています。それは人々がそのファイルを持っているかどうかをチェックし、持っていない場合はそれを作成し、既存のすべてのパスディレクトリとユーザーが入力したものを追加します。

#!/bin/bash

echo "Please enter a directory that you want to add to your PATH: "
read dr

if [ -f ~/.bash_profile ]
then
    # Add the read 'dr' directory to the end of the line that starts 
    # with PATH=, in your ~/.bash_profile file
    source ~/.bash_profile
else
    echo "PATH=$PATH:$dr" > ~/.bash_profile
    echo "export PATH" >> ~/.bash_profile
    source ~/.bash_profile
fi

重要なのは、ファイルがすでに存在する場合、PATH =で始まる行を確認して、ユーザーが入力したディレクトリをその行の最後に追加する方法がわからないということです。これは私に与えられた単なる演習であることに注意してください。ユーザーが入力したディレクトリを〜/.bash_profileを介してPATHに追加する必要があります。ただし、なぜ誰かが〜/.bash_profileを使用してPATHに新しいディレクトリを追加する必要があるのか​​わかりません。

4

2 に答える 2

1

新しいに追加している行を見てください.bash_profile

echo "PATH=$PATH:$dr" > ~/.bash_profile
echo "export PATH" >> ~/.bash_profile

最初のものは、すでに何が入っているかに関係なく、すでにに追加$drされています。これは、すでに存在している場合でも同じことを実行できることを意味します。さらに別のディレクトリを追加する新しい行を追加するだけです。PATHPATH.bash_profile

touch ~/.bash_profile
echo "export PATH=\$PATH:$dr" >> ~/.bash_profile

注意すべきいくつかのこと:

  1. それをingすること.bash_profileによって存在することを確認してください。touchその後、その存在をテストする必要はありません。

  2. 必要な行は1行だけです。export環境へのエクスポート用にマークを付けるために使用するときに、変数を設定できます。

  3. をエスケープし$$PATH、文字通りのドル記号が.bash_profile;に書き込まれるようにします。$dr適切なディレクトリが追加されるように拡張させたいので、同じことは必要ありません。

  4. を使用してこの新しい行を追加し>>、既存のファイルを上書きしないようにします。

于 2013-03-19T21:03:11.037 に答える
-2
~/.bashrc 

このファイルを自宅で試してください。

于 2013-03-19T19:44:31.943 に答える