GNU/Linux >> Linux の 問題 >  >> Linux

$ pagerにスペースを含めることはできますか?

ユーザー指定のポケットベルを実行するアプリケーションを作成しています。これを行う標準的な方法は、PAGERを確認することのようです。 環境変数。

これがプログラム名なのか、引数付きのプログラム名なのかわかりません。これに言及している標準を見つけようとしましたが、見つかりませんでした。

私の直感は、スペースを分割して実行する必要があるということです。私は正しいですか? $PAGERのような環境変数を想定したさまざまなプログラムに出くわしました。 および$EDITOR 環境変数のないプログラム名です。

おそらく、shで実行する必要があります 代わりに?

リンク

  • この質問では、さまざまな一般的な環境変数のソースについて説明します

承認された回答:

私の直感は、スペースを分割して実行する必要があるということです。

良い本能。 execに電話しています (3);サポートする環境変数をどのように解釈するかはあなた次第です。オプションをサポートすることで、ユーザーがスクリプトを作成して1つの$PAGER名にまとめる手間を省くことができます。

従うべき良い例はかもしれません (1)。私のシステムでは、MANPAGERをサポートしています。

MANPAGERが設定されている場合、その値は、マニュアルページを表示するために使用するプログラムの名前として
使用されます。そうでない場合は、PAGERが使用されます。
どちらにも値がない場合は、 / usr / bin / less -is 使用されます。

これは、少なくともPAGERにオプションを含めることができることを意味します。あなたはあなたのものを試して見るかもしれません。きっとそうだろう。

Posixは、ユーティリティを表す環境変数がどのように解釈されるかという問題に対処しているとは思いません。あなたが持っている最高のものは、先行技術の一般的な例だと思います。

「the」シェルを通過させるかどうかについては、シェル変数の拡張を利用して文書化する場合を除いて、「いいえ」と言います。シェルをシェルから遠ざける方が簡単で予測可能です。


Linux
  1. Vim または Linux でスペースをタブに変換するにはどうすればよいですか?

  2. Linux環境で他のアクションを同時に実行しながら、Cプログラムがユーザー入力をポーリングするにはどうすればよいですか?

  3. 「,,」を「..」にエイリアスできますか?

  1. * in * / etc / environment?で環境変数を参照する

  2. ディスク io を監視するにはどうすればよいですか?

  3. 名前にスペースが含まれているユーザーのグループを一覧表示するにはどうすればよいですか?

  1. Linux 環境での C#

  2. crontab が使用する環境変数はどこで設定できますか?

  3. 環境変数の確認