事の発端
ふつうのLinuxプログラミング Linuxの仕組みから学べるgccプログラミングの王道
以上の本に”\007”って標準出力すると文字コード由来でベルが鳴ると書いてあった。
書いてあるなら試すしか無い。
普段から利用しているiTermを開いて
1
|
|
ベルが鳴る。
1
|
|
8と出力
1
|
|
9と出力
変な気がする。
問題点
ここに沿って考えると、BSとか、HTとかが表現されるはず。
少なくとも、普通に8とか9とかは違う気がする。
検証
以上のようなスクリプトを作成し走らせた。
結果は両方共以下のとおり。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 |
|
途中でアルファベットとか出てきていいと思うのに、なんか違う気がする。
結論
echo コマンドの使い方の問題だった。
こんなことで日立にお世話になるとは思っていなかったけれど。
要するに、echoコマンドの使い方的には8進数か16進数を期待しているので、gistに上げたプログラムは自分の期待通りにはなりません。
自分が期待していた動きをするスクリプトは以下。実行結果は割愛
あと
1
|
|
でベルがなるのは
1 2 3 4 5 6 7 8 9 |
|
ということらしい。