date /T の出力を変数 b に代入する。
@echo off for /F "USEBACKQ" %%a in (`date /T`) do ( echo a = %%a set foo=%%a ) echo a = %%a echo foo = %foo% pause結果:
>test.bat a = 2009/05/25 a = %a foo = 2009/05/25 続行するには何かキーを押してください . . .
date /T の出力を変数 b に代入する。
@echo off for /F "USEBACKQ" %%a in (`date /T`) do ( echo a = %%a set foo=%%a ) echo a = %%a echo foo = %foo% pause結果:
>test.bat a = 2009/05/25 a = %a foo = 2009/05/25 続行するには何かキーを押してください . . .
if [ 0 = 0 ] && [ 1 = 1 ] ; then echo OK else echo NG fi #=> OK if [ 0 = 0 ] && [ 1 = 2 ] ; then echo OK else echo NG fi #=> NG
choice="null" while [ $choice = "null" ] ; do printf "Type yes/no: " read choice case $choice in yes) echo YES; break ;; no) echo NO; break ;; *) choice="null" ;; esac done
$ printf "%d\n" 07 7 $ printf "%d\n" 08 printf: 3016-002 08 は完全には変換されませんでした。 0 $ printf "%d\n" 010 810進数として扱うために expr を使う。
$ echo `expr 08` 8 $ echo `expr 09` 9 $ echo `expr 10` 10
$ start_time=`date` $ ## 時間のかかる(複数の)処理 $ echo ${start_time} -- `date` #=> Mon Aug 24 12:00:00 JST 2009 -- Mon Aug 24 13:00:00 JST 2009
if [ $1 ] ; then # $1 が存在すれば FOO=$1 else echo ARGV1 is essential exit 1 fi
if [ $1 = "aaa" ] || [ $1 = "bbb" ] ; then FOO=$1 else echo ARGV1 must be "aaa" or "bbb" exit 1 fi
$ while true ; do tail foo.log ; sleep 10 ; done
x=`printf %04d $(($1+1))` echo $x
#!/usr/bin/ksh ls xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ## 終了ステータスを返すコマンド status=$? if [ $status = 0 ] ; then echo $status OK else echo $status NG fi
オブジェクト'C:\foo.csv.txt' が見つかりませんでした。オブジェクトが存在していること、名前やパス名が正しいことを確認してください。というエラーが表示され、インポートに失敗する。
拡張子が「.csv.txt」になっているのがいけないらしく、 単に「.txt」とするとインポートできた。
$ load query table <ロード対象のテーブル名> SQL3532I ロード・ユーティリティーは現在 "LOAD" フェーズです。 読み込まれた行数 = 0 スキップされた行数 = 0 ロードされた行数 = 0 拒否された行数 = 0 削除された行数 = 0 コミットされた行数 = 0 警告の数 = 0 表の状態: ロード・ペンディング $
$ LANG=C db2 load query table <ロード対象のテーブル名> SQL3532I ロード・ユーティリティーは現在 "LOAD" フェーズです。 Number of rows read = 0 Number of rows skipped = 0 Number of rows loaded = 0 Number of rows rejected = 0 Number of rows deleted = 0 Number of rows committed = 0 Number of warnings = 0 Tablestate: Load Pending $
Firebugの「コンソール」タブ右側の「オプション」から 「Chrome のエラーを表示」 にチェックを入れる。
// 末尾に aa.insertBefore( bb, null ); // 先頭に aa.insertBefore( bb, aa.firstChild );
// 基本 str.match( /~/ ); // マッチした場合に処理 if( str.match( /~/ ) ){ // マッチした場合の処理 } // 括弧で参照 str.match( /(..)(...)/ ); foo = RegExp.$1; bar = RegExp.$2;
// 関数を作成 var foo = function (){ ; } // イベントに対応付け window.addEventListener( "load", foo, true );参考: 第6回 イベントハンドラから脱却しよう:ITpro
表スペースに含まれるコンテナをリストアップ
list tablespace containers for <表スペースID> # 詳細表示 list tablespace containers for <表スペースID> show detailRID
→レコードID擬似空白ページ
DB2 UDB V8.1 タイプ2索引<第1.0版2004年3月> p15 http://www-06.ibm.com/jp/domino01/mkt/cnpages1.nsf/ec7481a5abd4ed3149256f9400478d7d/4925722f004efd2b49256f700015e882/$FILE/type2index.pdf
GET DB CFG FOR msadb SHOW DETAIL | grep -i heap→ データベース・ヒープ / ユーティリティー・ヒープ・サイズ / アプリケーション・グループ・ヒープのメンバーのパーセント / アプリケーションの最大制御ヒープ・サイズ / 共有ヒープのソート・ヒープしきい値 / ソート・リスト・ヒープ / SQL ステートメント・ヒープ / デフォルト・アプリケーション・ヒープ / 統計ヒープ・サイズ
$ db2 get snapshot for database on <データベース名> | grep ソート・オーバーフロー ソート・オーバーフロー = 1 → ソート・オーバーフローが起こっている。参考: ソフトウェア | DB2 UDB V8.2.3において、SQLにSQL0901Nエラーが返される問題への対応 (DM-05-034)
SQL0289N 表スペース "USERSPACE1" の新規ページを割り振れません。 SQLSTATE=57011
表スペースとコンテナの関係
→ @IT:DB2のデータベース・オブジェクトと物理設計(1/2)表スペースの一覧表示
list tablespaces 表スペースID、表スペース名、タイプ(DMS/SMS)、内容、状態(再配置中など)を表示する表スペースの詳細 / 表スペースがSMSとDMSのどちらか確認 / コンテナの空き容量を確認
list tablespaces show detail 表スペース ID、名前(表スペース名)、 タイプ(DMS/SMS)、内容、状態、詳しい説明、 合計ページ数、使用可能ページ数、使用したページ、空きページ、 最高水準点 (ページ)、ページ・サイズ (バイト)、エクステント・サイズ (ページ)、 プリフェッチ・サイズ (ページ)、コンテナー数 を表示。表スペース・コンテナの状態
get health snapshot for tablespaces on <データベース名> show detail コンテナがいっぱいになっていないかなど、異常を見る。コンテナ操作
コンテナを表スペースに追加(ファイルの場合) alter tablespace <表スペース名> add ( FILE '<ファイルのパス>' <ページ数> ) コンテナのサイズを変更(ファイルの場合) alter tablespace <表スペース名> resize ( FILE '<ファイルのパス>' <変更後のページ数> ) 表スペースからコンテナを削除 alter tablespace <表スペース名> drop ( FILE '<ファイルのパス>' ) コンテナとしてファイルを使用する場合、通常の rm コマンドでの削除などは行わず、 DB2 のコマンドを介して操作する。 変更を行った後、自動的に再配置される。再配置が終わったかどうかは list tablespaces などで確認できる。