kshが構造体をどのように処理しているかを把握しよう!(テキスト)。例えば、Kornシェルのメタキャラクタ:!(何らかのテキスト)とはどういう意味ですか?
$エコー!(こんにちは)(それが列ではなく行に分類されます除いて、lsコマンドの出力と同様)
は、現在のディレクトリ内のファイルのリストを生成します。どのテキストが括弧内にあるかは関係ありませんが、出力は同じです。
誰でもコマンドが実際に行っていることに関して、私を啓発することができますか?ありがとう!
kshが構造体をどのように処理しているかを把握しよう!(テキスト)。例えば、Kornシェルのメタキャラクタ:!(何らかのテキスト)とはどういう意味ですか?
$エコー!(こんにちは)(それが列ではなく行に分類されます除いて、lsコマンドの出力と同様)
は、現在のディレクトリ内のファイルのリストを生成します。どのテキストが括弧内にあるかは関係ありませんが、出力は同じです。
誰でもコマンドが実際に行っていることに関して、私を啓発することができますか?ありがとう!
それはハローを除くすべてのファイルをエコーします。また、ここではいくつかのより詳細な情報ですecho !(*.java)
のようなワイルドカードを使用することができます。詳細については、kshのマニュアルページの「ファイル名の生成」を参照してください(bashも同様です)。複数のパターンは、ここを参照してください:https://www.mkssoftware.com/docs/man1/sh.1.asp
A sub-pattern begins with a ?, *, +, @, or ! character followed by a pattern-list
enclosed in parentheses. Pattern-lists themselves can contain sub-patterns.
The following list describes valid sub-patterns.
?(pattern-list)
Matches exactly zero or exactly one occurrence of the specified pattern-list.
*(pattern-list)
Matches zero or more occurrences of the specified pattern-list.
+(pattern-list)
Matches one or more occurrences of the specified pattern-list.
@(pattern-list)
Matches exactly one occurrence of the specified pattern-list.
!(pattern-list)
Matches any string that does not match the specified pattern-list.
だからあなた例えば、シェルは括弧が続く引用符で囲まれていない感嘆符を見た時、それはモードと一致するファイル名になり、それはない、現在のディレクトリ内のファイルを表示しますマッチ "こんにちは"。