
UNIXオペレーティングシステムの/etc/securityフォルダにある.profileに次のテキストを追加するには?
PS1='hostname -s':$LOGNAME'[$PWD]'
私は試した:
print 'export PS1='hostname -s':$LOGNAME'[$PWD]' ' >> profile
私の結果は次のとおりです。
export PS1='hostname -s':$LOGNAME[/etc]
[/etc.]へ。
答え1
あなたが下したコマンドはほとんど意味がありません。この内容をどこかで読んだら、もっと注意深く読んでください。'hostname -s'
実際にはなければなりません`hostname -s`
。つまり、一重引用符の代わりに逆引用符を使用する必要があります。コンピュータで作業する場合、句読点はしばしば重要です。`hostname -s`
次のように書くことも$(hostname -s)
できます。
一重引用符内のテキストは文字通り解釈されます。バックティック内のテキストは次のいずれか$(…)
です。コマンドの置き換え:コマンドの出力に置き換えられます。
だからその行は
PS1=$(hostname -s):$LOGNAME'[$PWD]'
これにより、プロンプトにコンピュータ名、コロン、ユーザー名、括弧内の現在の作業ディレクトリが設定されます。
次のファイルを編集しないでください/etc
。これはすべてのユーザーに適用されます。ここで質問する必要がある場合は、すべてのユーザーに対してその設定を編集しないでください。PS1
これはおそらくホームディレクトリにあるファイルであるシェル設定ファイルで設定する必要があります.kshrc
(シェルがkshであると仮定します。シェルがbashの場合は使用し、シェル.bashrc
がzshの場合は使用.zshrc
)。
答え2
代わりに \$PWD を作成して $PWD をエスケープする必要があります。使用しているシェルのようなコンテキストを提供していないので、確かに言うことはできません。 Bashの正しいコマンドは次のとおりです。
echo "export PS1='hostname -s':$LOGNAME'[\$PWD]' " >>profile