揮発性のメモ2

http://d.hatena.ne.jp/iww/

2017-08-01から1ヶ月間の記事一覧

エスケープシーケンス除去

cvs diff | perl -pe 's/\e\[[;\d]+[mk]//g' cvs diff | sed -r "s:\x1B\[[0-9;]*[mK]::g" ANSI カラーシーケンスを除去するコマンド - わからん ANSIエスケープシーケンスを除去する · GitHub

jQueryのセレクタで複数の要素を選択する

<form id="PIYO"> <input name="aaa"> </form> <form id="HOGE"> <input name="aaa"> <input name="bbb"> <select name="ccc"> form#HOGE の下のinputとselectにonchangeつけたいとき $("form#HOGE select,input").change(myfunc); と書くのは間違っている。 この場合、form#HOGE select と input のふたつのor扱いになり、思ってもいないinputまで対象になってしまう // それぞ</select></form>…

selectで選択されてる項目名と値の取得

三十六 三十七 三十九 <SELECT NAME="sample" id="sample"> <OPTION VALUE="36.txt">三十六 <OPTION VALUE="37.txt">三十七 <OPTION VALUE="39.txt">三十九 </SELECT> /** サンプル切替 */ function changesample(){ // 項目名のほうは text() で取得 var text = $("select#sample option:selected").text(); console.log(text, "が選択されたよ"); // 値のほうは val() で取…

端末からのキー入力で CTRL+C を無視する

CTRL+C, INTR, SIGINT, ETX, 0x03 ETXを含むテキストをコピーしてteratermなどの端末にペーストすると CTRL+Cと同じ扱いになって、起動中のプログラムが止められてしまう。 sttyコマンドで抑止できる stty intr undef ★実行前 $ stty -a speed 9600 baud; ro…

ファイルからの入力に標準入力を使う

./program input.txt ファイルからデータを読み込むプログラムに、標準入力からのデータを読み込ませるには、/dev/stdin を使う cat input.txt | ./program /dev/stdin コンソールからの直接入力はできない ./program /dev/stdin 「ファイルをオープンしてre…

静的ライブラリをリンクする

C

直接ファイルをリンクする 一番楽なのは libhoge.a を直接指定してリンクする 静的ライブラリを後ろに書くのがコツ良い例 $ cc -lrt sample.o libhoge.a -o sample 悪い例 $ cc -lrt libhoge.a sample.o -o sample sample.o: In function `my_send': /home/u…

静的ライブラリを作る

C

all: libhoge.a libhoge.a: hoge1.o hoge2.o hoge3.o $(AR) $(ARFLAGS) $@ $^ 以下略静的ライブラリを作るにはアーカイバ ar を使う 変数ARのデフォルトは ar 変数ARFLAGSのデフォルトは rv Man page of ar

strncpy は文字列コピーじゃあない

C

Man page of STRCPY strncpyは文字列コピーと思ってはいけない。 名前にstrとかついてるだけのmemcpyの亜種、みたいに思わないとだめ。 void printbuf(int n){ int i; char buf[10]="@@@@@@@@@"; strncpy(buf,"hello",n); for(i=0;i<9;i++) printf("%02X ",b…

秀丸マクロで アウトライン解析枠 を表示する

秀丸マクロで、アウトライン解析枠(関数一覧とか出る枠)を表示する。 // アウトライン解析枠を表示する #ret=sendmessage(outlinehandle, 0x111, 7141, 0); showoutline;

nfs mount パーミッション

NFSマウントしたときのディレクトリのパーミッションは マウントポイントのパーミッションではなくて リモートのマウントされる方のディレクトリのパーミッションになる。 mount 192.168.0.2:/data /mntとかやったら、 /mnt のパーミッションは /data のパー…

秀丸でgrep結果をウィンドウじゃなくアウトプット枠に出力する

動作環境やファイルタイプごとの設定には選択する場所は無い grep実行時のダイアログの右下の「出力先」で指定する。

recvfromでバグを作りこむ

C

int result; char buf[256]; struct sockaddr_storage addr; socklen_t addrlen = 0; // ★バグ for(;;){ result = recvfrom(sd, buf, sizeof(buf), 0, &addr, &addrlen); if(result<0) continue; sendto(sd, "OK", 2, 0, &addr, addrlen); } recvfromで、ア…

scanf

#include <stdio.h> int main(void) { char *text = "123,456\n"; int no; char buf[]="bbbbbbbbbbbbbbb"; sscanf(text,"%d,%s", &no, buf); printf("'%d','%s'\n", no, buf); // '123','456' return 0; }</stdio.h>

複数のデスクトップを削除

Windowsキー+CTRLキー+左右矢印 でデスクトップ画面を切り替えられる。 ちょっと使い勝手が悪いので、仮想デスクトップ画面を無かったことにする タスクバー上で右クリックメニューから、「タスクビューボタンを表示」をチェック タスクビューボタンを押し…