\r
以下のようにオプション(キャリッジリターン)を使用してechoコマンドを練習しています。
echo -e "This is \r my college"
出力:
my college
\r
ところで、以下のように前に単語を追加すると
echo -e "This is the \r my college"
これにより、次のような結果が得られます。
my college the
他の例
echo -e "This is \r valid data"
valid data
echo -e "This is not a \r valid data"
valid data a
もしそうなら、ここでキャリッジリターンの実際の目的は何ですか?
ベストアンサー1
それは\r
単に「キャリッジリターン」文字であり、他に何もありません。これは、次の内容が\r
印刷された内容の先頭を上書きすることを意味します。
たとえば、
echo -e "1234\r56"
以下が表示されます。
5634
echo
印刷された次1234
の行の先頭に戻り、一番56
上に印刷されます12
。
新しい行を見つけるには、\n
代わりに試してください。スペースも必要ありません。たとえば、
echo -e "This is\nmy college"
すると、以下が出力されます。
This is
my college
キャリッジリターン文字は、次の場合に便利です。
#!/bin/sh
i=0
while [ $i -lt 3 ]
do
echo -ne "\r"`date` #you should remove new line too
sleep 1
i=$(($i + 1))
done
exit
date
各ループの後に新しい行を作成するのではなく、独自の上部に表示されます。