| 『知っていたら役に立つ時もあるかも』なコマンドなど。 | ||||||||||||
| emacs キーバインド | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| M-x describe-bindings で一覧表示 以下,たまにしか使わないけどあると便利一覧
| ||||||||||||
| sudo コマンド | ||||||||||||
| sudo sh -c "コマンド(リダイレクトなど可能)" | ||||||||||||
| cache purge | ||||||||||||
| echo {1,2,3} > /proc/sys/vm/drop_caches | ||||||||||||
| 不良セクタありのHDDコピー | ||||||||||||
| dd if=/dev/sd? of=/dev/sd? {bs=8b} conv=sync,noerror | ||||||||||||
| emacs カーソルの文字コード | ||||||||||||
| C-u C-x = でカーソル位置の文字コードが分かる. | ||||||||||||
| HTTPヘッダの取得 | ||||||||||||
| wget -S --spider #### or curl -I #### | ||||||||||||
| /dev/pts/?の削除 | ||||||||||||
| 不明な /dev/pts/? は,fuser {-u or -uk} /dev/pts/? で消せるかもしれない. | ||||||||||||
| SCSI デバイスの削除 | ||||||||||||
| USB-HDDなどを外してもデバイスから消えない場合. echo 1 > /sys/block/device-name/device/delete または echo 1 > /sys/class/scsc_device/h:c:t:l/device/delete 古くは echo "scsi remove-single-device 6 00 00 00" > /proc/scsi/scsi ※ cat /proc/scsi/scsi で番号を確認 | ||||||||||||
| USBメモリ上のWinPEなどの起動 | ||||||||||||
| USBフラッシュメモリのdosパーティションにコピーしたWindowsPEなどをgrubなどから立ち上げる場合. Windows機でそのパーティションをフォーマットした場合は,そのパーティションの前にあるセクター数が隠れた物理セクタ数として記録されるので正常に起動できる. linux上でmkdosfsでフォーマットする場合はこのセクタ数を -h オプションで指定すると良い. ※ INT 0x13でアクセスされる場合に必須 | ||||||||||||
| 再起動/シャットダウン | ||||||||||||
|
echo 1 > /proc/sys/kernel/sysrq でkernel.sysrqを有効にし, echo b > /proc/sysrq-trigger でsyncやumountなしに再起動. echo o > /proc/sysrq-trigger で強制シャットダウン. またはカーネルパニックを引き起こす方法 echo 1 > /proc/sys/kernel/panic でパニック後何秒で再起動するか設定. echo 1 > /proc/sys/kernel/sysrq; echo c > /proc/sysrq-trigger でパニック発生. | ||||||||||||
| 使用しているポートとプログラム | ||||||||||||
| root で netstat -nap や fuser -v ###/tcp など | ||||||||||||
| 長い行を折り返さない on vim | ||||||||||||
| :set nowrap | ||||||||||||
| 長い行を折り返さない on emacs | ||||||||||||
| (setq truncate-lines t) | ||||||||||||
| HDDの消去 | ||||||||||||
| shred コマンド | ||||||||||||
| gccのpredefine一覧 | ||||||||||||
| gcc -E -dM -xc /dev/null にてpredefineの一覧が見れる | ||||||||||||
| reiserfs上で削除したファイルの復活方法 | ||||||||||||
| ・ファイルシステムをすぐにアンマウント ※時間が経つにつれて成功率が下がる ・デバイス全体をファイルにコピー(dd if=/dev/hd? of=hd?) ※念のため ・そのコピーファイルをloopデバイスに(losetup /dev/loop? hd?) ・復活の呪文(reiserfsck --rebuild-tree --scan-whole-partition /dev/loop?) ・/dev/loop?をマウント。lost+foundディレクトリ内に復活している(かも) | ||||||||||||
| バインド・マウント | ||||||||||||
| 既にマウントされているマウントポイントを何回も使える。
tmpfs などでの利用が便利。
mount tmpfs /dev/shm -t tmpfs -o size=xxx; mkdir /dev/shm/tmp; | ||||||||||||
| SQL: 項目内容による集計 | ||||||||||||
| データベースで,ある項目の内容による集計をとりたい場合
select ある項目, count(*) from データベース group by ある項目 | ||||||||||||
| カラム指定で文字列を取りだす | ||||||||||||
| 例えば,Fortran のソースで行末の余分な数字を除く時など。
gawk '{print substr($0, 1, 72);}' < src_org.f | col -x > src_new.f | ||||||||||||
| OpenGL & png | ||||||||||||
| 画像を保存。 glReadPixels(x,y,width,height,GL_RGBA,GL_UNSIGNED_INT_8_8_8_8, image);
png_structp png_ptr = png_create_write_struct(PNG_LIBPNG_VER_STRING, NULL, NULL, NULL); | ||||||||||||
| LaTeXカレンダー | ||||||||||||
| emacs で,calendarのLaTeXコードを作成する。
M-x calendar よりCalendarモードで,"t m"と入力すると 1か月分のカレンダーを生成する。※ 他にもコマンドあり | ||||||||||||
| スクリーンを画像ファイルに保存する | ||||||||||||
| xwd や import | ||||||||||||
| 任意の行間隔に空行を入れる | ||||||||||||
| nnn行間隔に空行を入れる場合。※ nnnの部分に直接数値を入力
gawk '{print;if(FNR%nnn==0){print""}}' < in > out gnuplot の index を利用する(gnuplot> plot 'out' index mmm など)場合。gawk '{print;if(FNR%nnn==0){print"\n"}}' < in > out | ||||||||||||
| exim: メーラー | ||||||||||||
| 使っている人は知らないと困るだろうけど,こちらのページで。 frozen になったメールキューを含めて再送を試みるコマンド。 exim -qff frozen に関する自動設定。/etc/exim/exim.conf に auto_thaw = 3h や timeout_frozen_after = 7d | ||||||||||||
| netselect: ネットワーク上で近いサーバ探し | ||||||||||||
| ミラーサイトなどを選ぶ時、スコアが低いものを選ぶとよい。
netselect -vv www.xxx ftp.xxx ... | ||||||||||||
| icotool: windows の .ico や .cur 変換 | ||||||||||||
| ホームページのアイコン作成で使ってみた。
icotool -c -o xxx.ico xxx.png 例) xxx.png(16x16)を用意して変換。32x32 でもいいらしい!? |