超音波流体屋のプログラム備忘録

bash

最終更新:

usapfrog

- view
管理者のみ編集可

条件分岐

elifが特徴。" [ ", " ] "の前後には半角スペースを忘れずに。
  1. i=0
  2. if [ $i -eq 1 ]; then
  3. echo $i
  4. elif [ $i -eq 2 ]; then
  5. echo $i
  6. else
  7. echo $i
  8. fi

ループ

  1. for i in 1 2 3; do
  2. echo $i
  3. done

  1. i=0
  2. while [ $i -ne 10 ]; do
  3. echo $i
  4. i=`expr $i + 1`
  5. done

無限ループ
  1. while [ 1 -eq 1 ]; do
  2. done

置換

後方置換 (拡張子変換など, %で最短・%%で最長マッチ)
  1. for f in `ls *.dat`; do
  2. mv $f ${f%.dat}.txt
  3. done

前方置換 (共通ファイルヘッダ変換など,#最短・##最長)
  1. for f in `ls a*.dat`; do
  2. cp $f b${f#a}
  3. done

特定のフォルダにある同名ファイル収集用ルーチン

  1. ls dats 1>/dev/null 2>/dev/null
  2. if [ $? -ne 0 ] ; then
  3. mkdir dats
  4. fi
  5. for d in `ls -d folder*/`; do
  6. f=${d%/}
  7. cat $f/data.txt > dats/${f}.dat
  8. done
folder, data, catコマンドあたりは適宜変更する


doskey (=unixのalias)

win用texliveとかのplatexは基本sjisなので。引数をとるときには$*を追加する。
[init.bat]
  1. @echo off
  2. doskey utex=platex --kanji=utf8 $*
毎回使うときは例えば C:\bin\init.batとかに保存して、レジストリ(regedit.exe)を開き
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor
HKEY_CURRENT_USER\Software\Microsoft\Command Processor
のどちらかに、 AutoRun で文字列値を追加、値を C:\bin\init.bat とする。

参考

目安箱バナー