Ubuntuで非ログインシェルを開くと、現在の作業ディレクトリは/home/user_name
(私の$HOME
環境変数)ですが、端末の起動時に別のディレクトリになるように変更したいと思います。
Ubuntuで端末を実行すると、.bashrc
ファイルを受け取るという記事を読んだ。だから私は追加しました
export HOME=/home/user_name/Documents
私の.bashrc
ファイルに。今ターミナルを開くと、まだ/home/user_name
ディレクトリにあります。
これをどのように変更できますか?
答え1
.bashrc
まず$HOME
、。
これを行うよりエレガントな方法があると確信していますが、一時的な解決策として、次の行を次の行に追加するだけです.bashrc
。
cd ~/Documents
ログインしていない新しいシェルを起動するたびに(新しい端末を開く)、このファイルが読み込まれるため、コマンドが実行され、cd
必要~/Documents
に応じて端末が起動します。
答え2
端末は、親から継承された作業ディレクトリから開始されます。
ただし、一部の設定では、設定を上書きできます。
以下を使用してgnome-terminal
プロファイルを編集できます。私のシェルの代わりにカスタムコマンドを実行するそしてそれを作る:
sh -c 'cd ~/Documents; exec "${SHELL:-sh}"'
答え3
これが私が入れたものです~/.bash_profile
:
alias curDir="pwd | sed -e 's/ /\\ /'"
alias save='echo `curDir` > ~/.saved_dir'
alias saved='cd `cat ~/.saved_dir`'
saved
私はいつもこれに頼ってきました。デフォルトでは、私はプロジェクトを操作するときにsave
そのホームディレクトリを作成し、その後のすべてのセッションがそこから始まります。それからプロジェクトを変えたり、別のことが起こったら、save
別の場所に行きます。
より良い方法を探している間にこの質問を見つけましたが、特定のディレクトリをハードコードするよりも私が得た方がうまくいきました。
答え4
/etc/passwd
デフォルトのホームディレクトリの変更と変更を検討してください。