存在するこの回答U+2018
、ユーザー pizdelect は、一重引用符文字を使用して新しい Bash サブシェルを起動する方法について説明しますU+2019
が、内部では設定できないため、設定するbash.
項目がないようです。しかし、常に新しいサブシェルを手動で起動するのは途方もない痛みです。 ~/.bashrc
~/.bashprofile
Bashが常にこのように起動するようにするにはどうすればよいですか?
答え1
一部(すべて?)Linuxベースのシステムでは、定義をに追加できます/etc/default/locale
。私のDebianシステムでは、ファイルに次のものが含まれています。
# File generated by update-locale
LANG=en_GB.UTF-8
# Fancy quotes, https://unix.stackexchange.com/a/584542/100397
LANGUAGE=en@quot:en_GB:en
ログインすると、私の環境にこれらのエントリがあります。
env | grep LANG
LANGUAGE=en@quot:en_GB:en
LANG=en_GB.UTF-8
コマンドは目的の方法で動作します。
alias foo=bar
type foo
foo is aliased to ‘bar’
答え2
LANGUAGE
呼び出されるプロセスに変数を追加する必要がありますbash
。これは、シェルにアクセスする方法によって変わる可能性があります。まず、シェルの親プロセスを見つけて、ps -o ppid= -p $$
プロセス名を取得しますps -ef <pid from last command>
。環境変数を注入するプログラムです。またはgetty
などの端末エミュレーターです。gnome-terminal
sshd