技術メモ

【Windows Bat】バッチファイル(*.bat)テンプレート

動作可能なバッチのサンプルが中々ないため作成。

このテンプレートをもとに目的のコマンド呼び出しを追加すれば、作業が捗る・・・かも。

@echo off
setlocal
rem **************************************************
rem Windowsバッチファイルテンプレート v1.01 2017/08/23
rem https://juraku-software.net/
rem ★印のブロックを書き換えて使ってください
rem 
rem このテンプレートの仕様>>
rem バッチファイルの保存フォルダの下にLogフォルダを作成し、そこに日付のログファイルを作成する。
rem エラー処理のテンプレも兼ねて故意に誤ったパラメータを指定してPingコマンドを実行している。
rem **************************************************

rem ■ログファイル名取得(現在時刻)
set TIME2=%time: =0%
set NOW_DATE=%date:~0,4%%date:~5,2%%date:~8,2%_%TIME2:~0,2%%TIME2:~3,2%%TIME2:~6,2%
set LOG_NAME=Log\%NOW_DATE%.log

rem ■カレントディレクトリ変更
cd /d %~dp0

rem ■ログ作成
if not exist Log\ (
 mkdir Log
)
echo バッチ起動 %date% %time% > %LOG_NAME%

rem ■目的のコマンド★
echo コマンド開始 >> %LOG_NAME%
rem エラーを起こすために適当なパラメータを指定
ping -aaa >> %LOG_NAME% 2>&1

rem ■エラー判定
if %errorlevel% == 0 (
 rem エラー無し
 echo コマンド実行成功 戻り値:%errorlevel% >> %LOG_NAME%
 endlocal
 exit /b 0
) else (
 rem エラー有り
 echo コマンド実行失敗 戻り値:%errorlevel% >> %LOG_NAME%
 endlocal
 exit /b %errorlevel%
)

rem ■終了

変更履歴
2017/08/23 setlocal~endlocalの記載追加

 

【WordPress】W3 Total Cache導入後、500エラー

W3 Total Cache導入後、大半のページが500エラー(500 Error CGI もしくは SSI が正しく動作していません。)になってしまう現象が発生しました。
プラグインを無効化しようとしても、ログインページが500エラーになってしまい何もできない状態となり、とても困りました。

環境:WordPress 4.7.1、ロリポップ

以下のサイトを参考に、FTPにて.htaccessのコメントアウトと、各ファイルをリネームしたところ、ログインページを含め500エラーが解消されました。ありがとうございます。
wpXレンタルサーバーでW3 Total Cacheが500エラーになる問題の解消方法、ピンチから脱出方法!

ただ、その後もダッシュボードに以下のエラーが出続けたため、記載されたパスのファイルもリネームしたところ、エラーが消え復旧しました。
W3 Total Cache Error: some files appear to be missing or out of place. Please re-install plugin or remove /xxxxx/wp-content/db.php.
W3 Total Cache Error: some files appear to be missing or out of place. Please re-install plugin or remove /xxxxx/wp-content/object-cache.php.

結局、よく原因が分からず。管理画面からプラグイン削除はできませんでしたが、今のところ問題なくサイト閲覧ができている状態ですので、様子を見ようと思います。

WordPressはプラグインを気軽に導入できてとても便利ですが、トラブルが発生した場合の解決方法を見つけるのは大変かもしれませんね。

【Access】レポートの数値項目の小数点以下表示桁数を自動で変更する

  1. テキストボックスのコントロールソースを以下の通りに変更
    =Format([フィールド名],IIf(Int([フィールド名])=[フィールド名],”#,##0″,”#,##0.####”))
  2. テキストボックスの書式を設定しない(空白に)
  3. テキストボックスの小数点以下表示桁数を「自動」に変更
  4. テキストボックスの文字配置を「右」に変更

動作結果

※Access2010にて動作確認

【SQL Server】全角文字が含まれるデータを取得する

SELECT
    *
FROM
    テーブル名
WHERE
    LEN(RTRIM(該当フィールド名)) <> DATALENGTH(RTRIM(該当フィールド名))

※SQL Server2008にて動作確認

解説

LEN(文字数の取得)と、DATALENGTH(バイト数の取得)の結果が異なる場合、全角文字が含まれていると判断しています。
尚、LEN関数は末尾に半角スペースが含まれる場合、1文字分少なくカウントされるため、RTRIMであらかじめ末尾のスペースを取り除いた上で比較しています。