csh/tcshでプロンプト形式の文字列を取得する方法

csh/tcshでプロンプト形式の文字列を取得する方法

現在のプロンプト形式の文字列は、私の組織によって提供される外部スクリプトによって生成されます。現在の形式文字列が必要なので、文字列に時間を追加して何かをしたいと思います。

.cshrc(および対応するリンカースクリプト)を参照してください。しかし、現在のプロンプト形式の文字列をcshellに要求できる場合は、はるかに簡単になります。

現在、シェルの型文字列を取得する方法を知っていますか?

ありがとう

答え1

あなたは会社のコンピュータを使用しているので、IT部門に助けを求めてください。プロンプトを変更すると、会社のポリシーに違反する可能性があります。そうでない場合は、カスタムプロンプトを作成するか、会社全体のプロンプトを更新することもできます。それ以外の場合は、独自のカスタムプロンプトを作成するのに役立ちます。

コメントで述べたように、「ヒントは変数$PS1、、$PS2AND $PS3」に格納されます。これは、言及することを忘れたオペレーティングシステムの特徴によって異なります。

答え2

(t)cshプロンプト変数は$prompt[1]なので、質問に対する直接の答えは次のようになります。

printf '%s\n' "$prompt"

tcsh(オリジナルではありません)では、午前/午後12時形式でタイムエスケープをcsh使用できます。%t

% set prompt = "%t - $prompt"
1:53pm - % _

または%P秒単位の24時間形式の場合:

% set prompt = "$prompt (%P) "
%  (13:55:31) _

プロンプトエスケープの完全なリストは、次のように表示されます。tcsh(1)マンページ。

[1] また、スペル校正機能だけでなく、for/ループおよび行連続機能もtcsh提供します。$prompt2foreachwhile\$prompt3

関連情報