2014/01/15

robocopyコマンドでファイルの同期

robocopyのほうがxcopyより同期に適している。

:: robocopyコマンドオプション一覧
::
:: > robocopy /? で表示される内容の抜粋一部抜粋
::
::
:: 使用法   : ROBOCOPY コピー元 コピー先 [ファイル [ファイル]...] [オプション]
::
:: コピー元 : コピー元ディレクトリ (ドライブ:\パスまたは \\サーバー\共有\パス)。
:: コピー先 : コピー先ディレクトリ (ドライブ:\パスまたは \\サーバー\共有\パス)。
:: ファイル : コピーするファイル (名前/ワイルドカード: 既定値は「*.*」です)
::
:: /PURGE                     : 既にコピー元に存在しないコピー先のファイル/ディレクトリを削除します。
:: /E                         : 空のディレクトリを含むサブディレクトリをコピーします。
:: /MIR                       : ディレクトリ ツリーをミラー化します (/E および /PURGE と 同等)
:: /NP                        : 進行状況なし - コピーの完了率を表示しません。
:: /XF ファイル [ファイル]... : 指定された名前/パス/ワイルドカードに一致するファイルを除外します。
:: /R:n                       : 失敗したコピーに対する再試行数: 既定値は 1,000,000。
:: /W:n                       : 再試行と再試行の間の待機時間: 既定値は、30 秒です。
:: /COPY:コピーフラグ         :: ファイルにコピーする情報 (既定値は /COPY:DAT)。
::                              (コピーフラグ: D= データ、A= 属性、T= タイムスタンプ)。
::                              (S= セキュリティ =NTFS ACL、O= 所有者情報、U= 監査情報)。
:: /DCOPY:T                   :: ディレクトリ タイムスタンプをコピーします。

echo off

set TARGET_PATH="F:\backup\%~1"
set SOURCE_PATH="E:\%~1"
set LOG_FILE="F:\backup.log\\%~1.txt

robocopy %SOURCE_PATH% %TARGET_PATH% /MIR /R:2 /W:10 /NP /COPY:DAT /DCOPY:T > %LOG_FILE%

echo on

2013/11/12

MATLAB imshowの代わり

MATLABコマンドimshowはImage Processing Toolboxがないと使えない。
そこでimagescコマンドを使うことで回避できるが縦横比がおかしいのでつぶれた画像になってしまう。
そこで以下のように axis image を使うことで縦横比をいい感じに調整して表示する。
>> image_data = double(imread('data/mandrill-large.tiff'));
>> fig = figure(5);
>> imagesc(uint8(round(image_data)));
>> axis image;


2013/08/05

AT&T Go Phone SIM でテザリング docomo F-05D

US出張中に現地のSIMを使って電話、メールすることで通信料が節約できるので実践した。

AT&T Go Phone SIMをAT&T店舗にて購入。
SIMロック解除済のdocomo F-05DにSIMカードを挿入、APNを以下の通り設定。

APN : Phone
プロキシ : 未設定
ポート : 未設定
ユーザ名 : 未設定
パスワード : 未設定
サーバー : 未設定
MMSC : http://mmsc.mobile.att.net
MMSプロキシ : proxy.mobile.att.net
MMSポート : 80
MCC : 310
MNC : 410
認証タイプ : 未設定

プランは
$25/month + データ通信パッケージ($5で50MB)

これで、テザリングも問題なくできた。
テザリング利用分は$5のデータプラン内でのデータ通信量として計上されているため、
追加課金もされることもなく何の問題もなく使用可能。

これで快適。

ちなみに、日本ではF-05Dに別のSIMを指してもdocomoのアクセスポイントにつながるから、
テザリングできないといった書き込みもあったので、心配だったが今回のケースでは問題なかった。

ちなみに私のF-05Dは
Androidバージョン 4.0.3
ビルド番号 V08R31C

2012/08/23

JavaScriptとJSONの相互変換

JSONフォーマットの文字列をJavaScriptのオブジェクトに格納する方法

JSON.stringify : JSON文字列化
JSON.parse : JSON文字列をJavaScriptオブジェクト化
を使用する。

使用例)

> jsObject = [{'key' : 1, 'value' : 100},{'key' : 2, 'value' : 200}]
[
Object
key: 1
value: 100
__proto__: Object
,
Object
key: 2
value: 200
__proto__: Object
]

> var jsonString = JSON.stringify(jsObject)

> jsonString
"[{"key":1,"value":100},{"key":2,"value":200}]"

> var reverseObject = JSON.parse(jsonString)

> reverseObject
[
Object
key: 1
value: 100
__proto__: Object
,
Object
key: 2
value: 200
__proto__: Object
]

2012/08/14

EclipseのUpdateが遅い

[Window] - [Preferences] - [General] - [Network Connections] を開き
"Active Provider" を "Manual" に変更する。

  • デフォルトでは"Native"が選択された状態で
    "Proxy entries - HTTP Dynamic" にのみチェックが入っている 
  • "Manual"に変更することで
    "Proxy entries - HTTP/HTTPS/SOCKS" (いずれもManual)
    "Proxy bypass - localhost/127.0.0.1" (いずれもManual)
    にチェックが入る
これだけで体感ではだいぶ早くなる。

2012/06/11

EclipseのRun Configurationの情報


削除した古いプロジェクトのRunConfigurationが残っていて、
実行しようとして自動的に(1)といった添え字が追加される場合がある。

不要なRunConfigurationは手動で以下のフォルダにあるファイルを削除することで、
無駄に添え字がふられることもなくなる。

workspace\.metadata\.plugins\org.eclipse.debug.core\.launches

2012/05/15

ユーザを指定してプログラムを起動するコマンド

以下のように runas コマンドを使用すると
指定したユーザでプログラムを実行することができる。
>runas /user:[ユーザ名] /env "java -jar [filename].jar"