xargs

マッチした文字列を '#'とみなす.
%ls |xargs -I# cp # #.bak

foreach

zshにて検証
%touch {1..9}
%ls
1  2  3  4  5  6  7  8  9
%foreach file ({1..9})
foreach> mv $file 0x$file
foreach> end
%ls
0x1  0x2  0x3  0x4  0x5  0x6  0x7  0x8  0x9

sed

%echo front |sed 's/front/back/'
back
%echo front |sed 's_front_back_'
back
%echo "front\nfront\n" |sed '2s_front_back_'
front
back

置換のアドレス指定

~%echo "abc\nabc\nabc\nabc" |sed '2s/a/@/'
abc
@bc
abc
abc
~%echo "abc\nabc\nabc\nabc" |sed '$s/a/@/'
abc
abc
abc
@bc
~%echo "abc\nabc\nabc\nabc" |sed '/^a/ s/a/@/'
@bc
@bc
@bc
@bc
~%echo "abc\nabc\nabc\nabc" |sed '2,3s/a/@/'
abc
@bc
@bc
abc
~%echo "abc\nabc\nabc\nabc\nabc\nabc\nabc\nabc\nabc\nabc" |sed '2~3s/a/@/'
abc
@bc
abc
abc
@bc
abc
abc
@bc
abc
abc
~%echo "abc\nabc\nabc\nabc" |sed '1,+2s/a/@/'
@bc
@bc
@bc
abc
~%echo "abc\nabc\nabc\nabc" |sed '3!s/a/@/'
@bc
@bc
abc
@bc

コマンド

'-n'をつけないと,デフォルトですべての行が出力されてしまう
  • pコマンド
%cat -n /etc/group | sed -n '10,14p'
    10  news:x:9:
    11  uucp:x:10:
    12  man:x:12:
    13  proxy:x:13:
    14  kmem:x:15:

%cat -n /etc/group |sed -n '/sys/p'
     4  sys:x:3:
    42  syslog:x:103:

%cat -n /etc/group |sed -n '/[a-m]/!p'
     1  root:x:0:
     4  sys:x:3:
     6  tty:x:5:
    13  proxy:x:13:
    67  ntp:x:127:


~%cat -n /etc/apt/sources.list |grep vmware
    58  # deb http://packages.vmware.com/tools/esx/latest/ubuntu/dists/precise precise main
    59  # deb-src http://packages.vmware.com/tools/esx/latest/ubuntu/dists/precise precise main

~%cat -n /etc/apt/sources.list |sed -n '/vmware/='
    58
    59

~%cat /etc/group |sed 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' |head
    ROOT:X:0:
    DAEMON:X:1:
    BIN:X:2:
    SYS:X:3:
    ADM:X:4:KI
    TTY:X:5:
    DISK:X:6:
    LP:X:7:
    MAIL:X:8:
    NEWS:X:9:

diff,patch の基本

diff -Naur A B > patch.txt
patch < patch.txt

dd

dd if=input_file of=output_file [bs=block_size [count=blocks]]
dd if=/dev/sdb of=/dev/sdc
dd if=/dev/sdb of=flash_drive.img
dd if=/dev/zero of=foobar count=1024 bs=1024
dd if=/dev/cdrom of=ubuntu.iso

/etc/fstab

フィールド
1ブロックスペシャルデバイスUUID=ce4bdc57-xxxxx, /dev/fd0,192.168.1.250:/mnt/public
2マウントポイント/opt,/boot
3ファイルシステムのタイプswap,ext3,ext4,nfs
4オプション(カンマで区切る)rw,user,noauto,exec,utf8
5dumpコマンドがダンプするか(0:しない,1:する)
6ブート時にチェックする順番

リダイレクト

種類ファイル記述しリダイレクト記号
標準入力0<
標準出力1>(追記は>>)
標準エラー出力22>(追記は2>>)
標準エラー出力を標準出力と同じ出力先に指定する場合には,コマンド > 出力先 2>&1といった形で指定することができる.
(標準エラー出力を標準出力にリダイレクト,を意味する)

teeコマンド

出力をファイルに送ると同時にディスプレイにも表示する.
$dmesg |tee dmesg.log
$dmesg 2>&1 |tee -a dmesg.log

プログラムが暴走しているのか,スリープしているのか

% ps ax -L
 1004  1004 tty6     Ss+    0:00 /sbin/getty -8 38400 tty6
 1011  1011 ?        Ss     0:00 acpid -c /etc/acpi/events -s /var/run/acpid.socket
 1012  1012 ?        Ss     0:00 cron
 1013  1013 ?        Ss     0:00 atd
 1020  1020 ?        Ss     0:01 /usr/sbin/irqbalance
左から4つめの項目はプロセスの状態.Rなら実行状態,Sならスリープ

直下のディレクトリサイズだけ知りたい

~/Dropbox%du -s *
6380    Family
10928   Html
1172    Photos
356     Public
36      Share
8176    Src
125504  Tmp
288     Tool
8       default
54840   repositories

グロブ

正規表現とは異なるので注意!
?任意の1文字0文字はNG
*任意の0文字〜0文字もOK
% ls a*
a から始まるファイル・ディレクトリ
% ls ab?de
ab の後に任意の一文字があり、その後に de が続くファイル・ディレクトリ
% ls *.c
拡張子が c のファイル・ディレクトリ
% ls foo[0-9]*
foo の後に数字が 1つ続き、その後に任意の文字列があるファイル・ディレクトリ
% ls foo[^0-9]*
foo の後に数字以外の文字が 1つ続き、その後に任意の文字列があるファイル・ディレクトリ
% ls foo.{c,h,pl}
foo.c と foo.h と foo.pl

od

od -tx116進表記で1バイトずつ出力
od -Ax -tx1z16進表記で1バイトずつ出力.テキスト表示付き

find

find コマンドの検索式(オプション)

オプション説明
-mtime daysdyas日前に修正されたファイルを検索
-mtime +daysdyas日より前に修正されたファイルを検索
-mtime -daysdyas日より後に修正されたファイルを検索
-daystart日数にかかわる指定の基準時刻を,コマンド実行日の0 時とする
-maxdepth N検索するディレクトリの深さの最大値を指定する
-xdev他のファイルシステムにあるディレクトリは検索しない

find コマンドの検索式(オプション)

アクション説明
-printマッチしたファイルを表示する
-exec COMMAND ;マッチしたファイルに対してコマンドCOMMAND を実行する
-ok COMMAND ;-exec と同じだが,コマンド実行前に確認する
-lsマッチしたファイルを「ls -dils」形式で表示する

find コマンドの検索式(アクション)

演算子説明
( EXPR )( ) 内の判別式(EXPR)を先に評価する
! EXPR判別式の意味が逆転する
EXPR1 EXPR2EXPR1 とEXPR2 をAND で評価する
EXPR1 -a EXPR2EXPR1 とEXPR2 をAND で評価する
EXPR1 -o EXPR2EXPR1 とEXPR2 をOR で評価する

コマンドを使ってトラブルシューティング

ネットワークトラブル

コマンド説明備考
traceroute -n<host><host>までの経路を調べる-nはIP表記
dig <url><url>のIPアドレスを調べる
host <url><url>のIPアドレスを調べる
nslookup <url><url>のIPアドレスを調べる
netstat -nrルーティングテーブルを表示する-nはIP表記
routeルーティングテーブルの表示/設定を行う
telnet <host> <port>サーバアプリケーションに接続する
arpARPテーブルの表示/設定を行う

このページへのコメント

PRPNKi I really liked your blog.Really looking forward to read more. Really Cool.

0
Posted by stunning seo guys 2014年01月20日(月) 11:54:53 返信

IhLzp2 I appreciate you sharing this post.Really thank you! Really Great.

0
Posted by tips about seo 2013年12月20日(金) 08:47:39 返信

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

管理人/副管理人のみ編集できます