タグ付けされた質問 「profile」

1
起動時にbashによって実行されているスクリプトを調べる
bashターミナルを起動した後、PATH変数に重複したエントリが含まれていることに気付きました。私の端末が起動ログインシェルは、そう~/.bash_profile、調達が続いている~/.profileと~/.bashrc。~/.profile重複するパスエントリを作成するのは、その中だけです。 教訓的であるために、これは、ソースされるべきであるファイルがソースされるべき順序です: Sourced /etc/profile Sourced /etc/bash.bashrc Sourced .bash_profile Sourced .profile Sourced .bashrc 誰かがこれを「PATH変数に重複が含まれている」とマークする前に、読み続けてください。 最初は~/.profile、これは2回ソースされていることと関係があると考えたため、ソースされるたびにログファイルにファイルを書き込むようにしましたが、驚くべきことに、1つのエントリのみがログに記録されました。さらに驚くべきことは、にあったエントリをコメントアウト~/.profileすると、PATH変数にまだエントリが表示されるという事実です。これにより、3つの結論に至りましたが、そのうちの1つはすぐに除外されました。 bashは有効なbashコメントを無視し、引き続きコメント付きコードを実行します ~/.profile出力を出力するコード(たとえばログファイル)を読み取り、無視するスクリプトがあります 別の~/.profile場所から調達されている私の別のコピーがあります 最初の1つは、いくつかの迅速なテストのため、そうではないとすぐに結論付けました。2番目と3番目のオプションは、助けが必要な場所です。 端末の起動時に実行されるスクリプトのログを収集するにはどうすればよいですか?echobashがソースであるかどうかを確認するためにチェックしたファイルで使用しましたが、端末で入力を開始する準備ができた時点まで実行を追跡する決定的なメソッドを見つける必要があります。 上記が不可能な場合は、実行中のスクリプトを確認するために他の場所を探すことができます。 今後の参考資料 これは、パスに追加するために現在使用しているスクリプトです。 function add_to_path() { for path in ${2//:/ }; do if ! [[ "${!1}" =~ "${path%/}" ]]; then # ignore last / new_path="$path:${!1#:}" export "$1"="${new_path%:}" # remove trailing : …
15 bash  profile 

2
Linuxディストリビューションのgnome-terminalプロファイルはどこに保存されますか?
私は使用しました(Red Hat、Ubuntu、CentOS、その他)。これらのディストリビューションはGnome-terminalを利用し、通常はコマンドが入力される場所のすぐ上にあるターミナルウィンドウにあるドロップダウンメニューを使用して、さまざまなターミナルプロファイルを柔軟に設定できます。これらのプロファイルにより、さまざまなファイルなどのフォントや色のプロパティを変更できます。 端末のこれらの異なるプロファイルはどこに保存されますか?

2
ウェイランドのgnomeと仮想端末(またはssh)のbashの環境変数を設定します
Gnome 3.22はデフォルトでウェイランドを使用します。ウェイランドのGnomeは読み取りません~/.profile(~/.bash_profileまたは/etc/profile)。https://bugzilla.gnome.org/show_bug.cgi?id=736660を参照してください。 初期化ファイルを次のように設定しています。 .bash_profileソース以外は何もせず.profile、.bashrc .profilePATHおよびのような環境変数のみを設定しますLC_MESSAGES .bashrclessやなどのアプリケーションのbash固有の設定とエイリアス、環境変数を設定しますgrep。 効果(ウェイランドの前)は次のとおりでした。 私がグラフィカルにログインしたときに.profile読むと、環境変数のようなものだったPATHとLC_MESSAGESしました。ターミナルエミュレーター内でbashを開いたときに.bashrc読み取られました。 私が仮想端末でログインすると、.bash_profile読み取られ、次に読み取ら.profileれ.bashrcます。 sshを使用してログインすると、動作は仮想端末に似ています。 すべての場合で.profile、.bashrc読んで、私の環境がセットアップされました。 そのため、gnome 3.22はwaylandを使用し、waylandは読み取りを行いません.profile。上記のような効果が得られるように、初期化ファイルを設定するにはどうすればよいですか? 特定のファイル(など.profile)が読み取られることを主張していないことに注意してください。私が望むのは、自分の環境を賢明な方法でセットアップすることです。つまり、bash固有の設定をbash初期化ファイルに保持し、他の設定を他の初期化ファイルに保持したいということです。また、設定を別のファイルにコピーしないようにします。 私はArch Linuxを使用しています。すべてのディストリビューションに対する回答を歓迎します。回避策を提案するときは、副作用と長所と短所も説明してください。 2017年11月の更新:私が理解している限り、gnome開発者は、ログインシェルの構成ファイル(.profileおよび.bash_profilebashの場合)がログイン後に提供されることを人々が期待していることを認めています。テキストまたはグラフィカルログインに関係なく。そのため、上記の私のユースケースは再び機能します。 まだgnome開発者はログインシェルの起動を避けたいと考えています。彼らが行っている方向は、systemdから環境化されたものを使用することです。 https://in.waw.pl/~zbyszek/blog/environmentd.html すべてのログイン方法が環境に適応するまでには時間がかかるようです。

4
Linuxの.bashrcファイルはどこにありますか?
.bash_loginと.bash_profileが見つかりません root@linux:~# locate .bash* /etc/bash.bashrc /etc/skel/.bashrc /etc/skel/.bashrc.original /home/noroot/.bashrc /home/noroot/.bashrc.original /root/.bash_history /root/.bashrc /usr/share/base-files/dot.bashrc /usr/share/doc/adduser/examples/adduser.local.conf.examples/bash.bashrc /usr/share/doc/adduser/examples/adduser.local.conf.examples/skel/dot.bashrc /usr/share/kali-defaults/.bashrc root@linux:~# すべてのユーザーに対して常に1つの.bashrcおよび.bash_profileファイルのみがありますか? また、.bashrcと.bash_profileは常に/ home / "user name"ディレクトリにありますか?

1
.profileと.bash_profileの違いは何ですか?システムに.profileファイルがないのはなぜですか?
だから私はLinuxにかなり慣れていないし、最近ネットブックにFedora 19をインストールした。LinuxとCLIをより深く理解したいので、今はLearn Linux:The Hard Wayを読んでいます。 演習3では、作成者は次のコマンドを提供します。 ls -al 猫のプロフィール 私はこれらの指示に従おうとしますが、役に立ちません。ls -alで確認できるように、ユーザー名ディレクトリに.profileファイルがありません。私が学んだことから、.bash_profileと.profileファイルは実質的に同じです。私の調査から結論付けた唯一の違いは、.bash_profileが最初にチェックされることです。 Linuxで同じ機能のファイルが複数あるのはなぜか、作成者が.bash_profileではなく.profileを使用しているのはなぜですか(システムが.bash_profileを最初に見つけたときに.profileが読み取られない場合)私のシステムに.profileファイルがないのはなぜですか?
12 bash  profile 

2
Unix whichコマンドで検出されるホームディレクトリパスを追加する方法
node.jsカスタムの場所にインストールし、その場所を$PATHin .profileファイルに追加しました。 $ node --version v0.6.2 $ which node $ echo $PATH /usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin:~/Unix/homebrew/bin $ cat ~/.profile export PATH="$PATH:~/Unix/homebrew/bin" Node.js自体は問題なく動作します。問題は、whichコマンドでリストされないことです。だからnpm今はインストールできません。そのためnpmの場所を見つけることができませんインストールしますnode.js。nodeによって発見されたバイナリをどのように作成できwhichますか?
12 path  profile  home  which 

3
$ HOME / bin dirが$ PATHにありません
私~/.profileには次のbin/ directoryように私の個人をロードする最後のブロックがあります: # set PATH so it includes user's private bin if it exists if [ -d "$HOME/bin" ] ; then PATH="$HOME/bin:$PATH" fi しかし、ロードされていないようです: echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games なぜこれが機能しないのですか?(私の殻はbashです。) ティガーの編集 echo $0 => bash echo $HOME => /home/student whoami => student less /etc/*-release => PRETTY_NAME="Debian GNU/Linux 9 (stretch)" NAME="Debian GNU/Linux" VERSION_ID="9" …

4
.profileはDebian Wheezy LXDEで提供されていません
私は追加$HOME/binする$PATHから~/.profile。ただし、ログイン時に提供されていないようです。私は、ログインマネージャを使用する- lxdm私が思うに、とではありませんstartx。これは、どのスクリプトが実行されるかについて問題であることを知っています。 説明のために、$HOME/bin明示的にソースを指定した後にがどのように追加されるかを確認してください~/.profile。しかし、それはグラフィカルログイン中に供給されるべきではありませんか? sashoalm@aspire:~$ echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games sashoalm@aspire:~$ source ~/.profile sashoalm@aspire:~$ echo $PATH /home/sashoalm/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games sashoalm@aspire:~$
11 profile  lxde 

1
ESの環境をどのように設定しますか?
私はここ数日、esを使って遊んでいますが、(rcのように.esrc)ログイン時に起動スクリプト()のみを実行するという癖/機能があります。各対話型セッションでコードを実行する通常の方法は、そのコードを%prompt関数に配置することです。 もちろん、一度も実行されていない%prompt場合、機能es -lはありません。 それで、質問:.profile(または.xprofile、.xsessionなど)のみをソースする、gdmまたは同様のものを介して入ってくるときのログイン環境をどのように設定しますか?私が思いついた最高のものは: if [ -f "$HOME/.esrc" ]; then eval "`es -l <<-x sh <<<'export -p' x`" fi それは...恐ろしいようです。より良いアプローチはありますか?

5
ssh経由のshスタートアップファイル
shシェルを開始する前に実行する必要があるいくつかの重要なコマンドがあります。これは、SSHコマンド(ssh host somecommand)およびコマンドを実行する他のプログラムでSSHコマンドを渡すために必要です。 私.profileにはこれがあります: ihammerhands@wreckcreations:~> cat .profile #specific environment and startup programs export PS1="\u@wreckcreations:\w> " export PYTHONPATH=~/python/lib/python2.4/site-packages export PATH=$PATH:~/bin:~/python/bin ただし、これは失敗します。 W:\programming\wreckcreations-site\test-hg>ssh name@host echo $PATH Enter passphrase for key '/home/Owner/.ssh/id_rsa': /usr/local/bin:/bin:/usr/bin PATHオプションがないことに注意してください shプロファイルの適切な名前は何ですか?注:私はrootアクセス権を持っていないので、これを他のユーザーに適用したくありません。これを行う別の方法はありますか? 編集:それは驚くべきことではない/bin/shへのリンクが表示されますbash。驚いたのは、私のプロフィールがまだ無視されていることです。助言がありますか?
10 bash  ssh  shell  profile 

1
/root/.bashrcと/root/.profileは、Debianシステムでどこから取得されますか?
通常、Debianシステムにユーザーを追加すると、の内容が/etc/skel/新しいユーザーのホームディレクトリにコピーされます。しかし/root/.bashrc、一致せず、一致/etc/skel/.bashrcし/root/.profileません/etc/skel/.profile。また、どちらのファイルも認識されていませんdpkg。それで彼らはどこから来たのですか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.