LPIC コマンドまわりについて その2
nlコマンド
cat -n
のようにファイルの一部に行番号をつける
odコマンド
バイナリファイルの内容を8進数や16進数で表示
# od -t x /etc/localtime
0000000 66695a54 00000032 00000000 00000000
0000020 00000000 03000000 03000000 00000000
0000040 09000000 03000000 0c000000 7085cec3
0000060 901e3ed7 8016ecd7 9016f9d8 80f8cbd9
0000100 101d07db 80daabdb 10ffe6dc 80bc8bdd
0000120 01020102 01020102 7e000002 00000090
0000140 01a08c00 7e000004 43080090 4a00544a
0000160 4a005444 00005453 00000000 695a5400
0000200 00003266 00000000 00000000 00000000
0000220 00000000 00000005 00000005 00000000
0000240 0000000b 00000005 ffffff10 a4c265ff
0000260 ffffff70 e3ce74ff ffffff70 85cec3ff
0000300 ffffff70 1e3ed7ff ffffff90 16ecd7ff
0000320 ffffff80 16f9d8ff ffffff90 f8cbd9ff
0000340 ffffff80 1d07dbff ffffff10 daabdbff
0000360 ffffff80 ffe6dcff ffffff10 bc8bddff
0000400 04020180 04030403 04030403 03830000
0000420 00000000 0400907e 907e0000 00000800
0000440 0c01a08c 907e0000 4d4c0400 534a0054
0000460 4a430054 444a0054 01000054 00000000
0000500 00000001 54534a0a 000a392d
0000513
# od -t o 8進数 (デフォルト)
#od -t c ascii文字
cutコマンド
ファイルの各行から指定したフィールドを取り出す。
# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
# cut -c 7 /etc/hosts (各行の7文字目)
0
# cut -c 1-7 /etc/hosts (各行の1-7文字目)
127.0.0
::1
# cut -d. -f 3 /etc/hosts (.をセパレータとして3つ目のフィールドを取り出す。)
0
localdomain6
joinコマンド
2ファイルの共通するフィールドを持つ行を連結する。
# cat sample1.txt
1:Tokyo
2:Shizuoka
3:Nagoya
4:Osaka
5:Miyagi
# cat sample2.txt
1:Aomori
2:Sendai
3:Utunomiya
4:Omiya
5:Urawa
# join sample1.txt sample2.txt
1 Tokyo Aomori
2 Shizuoka Sendai
3 Nagoya Utunomiya
4 Osaka Omiya
5 Miyagi Urawa
pasteコマンド
2ファイルの共通する行を水平方向に連結する
# paste -d":" sample1.txt sample2.txt
1 Tokyo:1 Aomori
2 Shizuoka:2 Sendai
3 Nagoya:3 Utunomiya
4 Osaka:4 Omiya
5 Miyagi:5 Urawa
trコマンド
標準入力からの文字列を変換削除する。
# cat sample1.txt |tr [a-z] [A-Z]
1 TOKYO
2 SHIZUOKA
3 NAGOYA
4 OSAKA
5 MIYAGI
# cat sample1.txt |tr -d [a-z]
1 T
2 S
3 N
4 O
5 M
splitコマンド
ファイルを分割(行数指定)
# split -2 sample1.txt sample1_split.
# ls sample1_split.a*
sample1_split.aa sample1_split.ab sample1_split.ac
# cat sample1_split.aa
1 Tokyo
2 Shizuoka
# cat sample1_split.a*
1 Tokyo
2 Shizuoka
3 Nagoya
4 Osaka
5 Miyagi
uniqコマンド
重複している行を1行に表示。sort
コマンドなどでソート済み前提。
# cat sample3.txt
1 Aomori
1 Aomori
2 Sendai
2 Sendai
3 Utunomiya
4 Omiya
4 Omiya
5 Urawa
# uniq sample3.txt
1 Aomori
2 Sendai
3 Utunomiya
4 Omiya
5 Urawa
prコマンド
ファイルの諸新規を整える。印刷剃る前の整形によく利用される、
pr [オプション] [ファイル名]
オプション | 説明 |
---|---|
+開始ページ[:終了ページ] | 開始ページや終了ページを指定する |
-h ヘッダ文字列 | ヘッダに表示されるファイル名を指定した文字に変更する |
-l ページ長 | ヘッダとフッタを含めたページの長さを暁雨数で指定する |
# pr -l 15 +1:3 /etc/nginx/nginx.conf
2013-02-22 15:51 /etc/nginx/nginx.conf Page 1
# For more information on configuration, see:
# * Official English Documentation: http://nginx.org/en/docs/
# * Official Russian Documentation: http://nginx.org/ru/docs/
user nginx;
2013-02-22 15:51 /etc/nginx/nginx.conf Page 2
worker_processes 1;
error_log /var/log/nginx/error.log;
#error_log /var/log/nginx/error.log notice;
#error_log /var/log/nginx/error.log info;
2013-02-22 15:51 /etc/nginx/nginx.conf Page 3
pid /var/run/nginx.pid;
events {
fmtコマンド
テキストを決められた文字数の幅に整形する。
# fmt -w 40 /etc/nginx/nginx.conf
# For more information on
configuration, see: # *
Official English Documentation:
http://nginx.org/en/docs/ # *
Official Russian Documentation:
http://nginx.org/ru/docs/
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log;
#error_log /var/log/nginx/error.log
(略)
expand, unexpandコマンド
前者はタブをスペースに変換する。後者はその逆。
expand [オプション] [ファイル名]
以下オプション
-t
:行頭のタブのみ変換-t タブ幅
タブ幅を指定するunexpand [オプション] [ファイル名]
-a
行頭以外の空白も変換する。
wc, grep, sedコマンド
頻繁に利用するので割愛