燈明ブログ

現状は小池啓仁の応援ブログ

echoコマンドと行末スペース

echoコマンドで出力テキストをファイルにリダイレクト(>)すると余分なスペースが付加される場合があります。


すると、そのスペースが意外なところに影響し、他のコマンドが失敗する場合があります。
たとえば、それがIDとかパスワードのときなどなど……。


ですので、余分なスペースを入れないようにするには、以下を参考にして下さい。
スペースが仮に『△』として、以下のように入力したとします。

余分なスペース入る2つのケース

◆ケース1

C:\Documents and Settings>echo△aaaa△>△TestFile.txt 

とすると、
TestFile.txtには、aaaaのあとにスペースが一つ入ります。
つまり、出力テキスト(aaaa)とリダイレクト(>)の間のスペースがリダイレクトされる。


◆ケース2

C:\Documents and Settings>echo△aaaa>△TestFile.txt△

とすると、
TestFile.txtには、aaaaのあとにスペースが一つ入ります。
つまり、なぜか行末のスペースまでリダイレクトされてしまうのです(盲点)。

まとめ(スペースが入らないケース)

  • 出力テキストとリダイレクト(>)の間にスペースを入れない。
  • 行末にスペースをいれない。入れるとなぜかリダイレクトされる。
C:\Documents and Settings>echo△aaaa>△TestFile.txt