Command Tips

Last-modified: 2008-10-18 (土) 00:20:48 (3229d)

シェルコマンド/DOSコマンドの覚え書き。


MS-DOS

  • DOSの/dev/null
    echo 破棄するテキスト >> nul
  • サブルーチン
    @ECHO OFF
    SETLOCAL
    CALL :SUB1 AAA BBB
    ENDLOCAL
    REM ----------------
    REM サブルーチン:引数1 引数2
    REM ----------------
    :SUB1
       SETLOCAL
       SET VAR1=%1
       SET VAR2=%2
       REM 何かの処理
       ENDLOCAL
       EXIT /b 0

シェル

xargs

例:カレントディレクトリ以下のphpファイルの文字コードをEUC-JPからUTF-8に書き換える

find . -name '*.php' | xargs nkf -Ew --overwrite

ping

MTUの最適値を調べるのにpingでパケットのフラグメントをチェックする。
WEB上に転がっている ping -f -l (パケットサイズ) (宛先) というのはWindowsやLinuxではうまくいくがBSD派生のMacOS Xではそもそもオプションが違う。 これで結構ハマった。実際は以下。

ping -D -s(パケットサイズ) -c1 (宛先)

manによるオプションの意味。

-D
Set the Don't Fragment bit.
断片化を禁止する。
-s
Specify the number of data bytes to be sent. The default is 56,
which translates into 64 ICMP data bytes when combined with the 8
bytes of ICMP header data.
要するにパケットサイズを指定するってこと。
-c
Stop after sending (and receiving) count ECHO_RESPONSE packets.
If this option is not specified, ping will operate until inter-
rupted.
送信数を指定する。このオプションを指定しない場合は中断(control + c)されるまで送信し続ける。