空白なしでパラメータを指定してコマンドを送信するには?

空白なしでパラメータを指定してコマンドを送信するには?

Linuxで空白なしでパラメータとしてコマンドを実行する方法はありますか?

cat file.txt

次のようにする必要があります。

cat(somereplacementforthiswhitespace)file.txt

ベストアンサー1

値が空白であるか、より一般的には空白を含む変数があればよいでしょう。

cat${IFS}file.txt

デフォルトはIFS空白、タブ、改行です。これらの文字はすべて空白です。単一のスペースが必要な場合に使用できます${IFS%??}

より正確には、これが機能する理由は、単語分割がどのように機能するかに関するものです。重要なのは、変数の値を置き換えた後に適用されることです。そして、単語分割は値の各文字を区切りIFS文字として扱うため、構成では、null以外の値IFSに設定されている${IFS}単語を区切ることができます。 1 文字より長い場合、IFS各文字は単語区切り記号です。連続したスペース区切り文字は単一の区切り文字として扱われるため、拡張結果はcat${IFS}file.txt2つの単語です。空白以外の区切り文字は別々に扱われます。catfile.txtIFS=',.'; cat${IFS}file.txtcatfile.txt

おすすめ記事