Linux備忘録7:改行コード変換、ブレース展開
タイトル内容をまとめたメモ
【改行コードも含めて、ファイル内容表示】
# cat -A [ファイル名]
Linux: LF ⇒$
Mac: CR ⇒^M
Windows: CRLF ⇒^M$
【改行コード変換】
⇒このパターンはperlを使用
【ブレース展開】
bashの機能のひとつ。数字、アルファベットを連番で指定したい場合等に記載を省略化できる。指定した値分、増減して連番指定するといったことも可能。
・ただの展開
# echo {a,b,c}
a b c ←出力結果
・単純な連続 (1~100 , a~zの場合)
# {1..100} {a..z}
⇒途中の数字、アルファベットを指定してもok
⇒アルファベットは大文字の指定も可。ただし小文字との混在は記号等が含まれたため確認が必要。
⇒また逆順での指定も可。例:{100..1}
⇒スペース区切りで出力されるため、そのままリスト格納できる。
・指定した値で増減して連続(インクリメント)
# echo {0..100..5}
0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 95 100 ←出力結果
※アルファベットも出来たが、利用方法が思いつかない。
・連番の前後に文字(数字)を入れる
前
# echo test{1..5}
test1 test2 test3 test4 test5
前後も可
# echo te{1..5}st
te1st te2st te3st te4st te5st
# echo 10{1..5}00
10100 10200 10300 10400 10500
数学式的な展開
# echo {a,b}{c,d}
ac ad bc bd
# echo {a,b}{c,d}{f,g}
acf acg adf adg bcf bcg bdf bdg
・カンマを使用して特定文字を単体出力させ、連番展開
# echo a{,a,b}
a aa ab
⇒カンマの位置で出力結果{a} の位置が変わる
・複数条件を入れ子を使用して指定してみる
# echo a{,{1..5}}
a a1 a2 a3 a4 a5
⇒細かい内容は分が長くなるため割愛。ログ取得に活用できそう。※日付指定とか