2005年07月25日
川俣晶の縁側ソフトウェアその他開発日誌total 4122 count

NT版UNIX-like toolsのjoinfコマンドで数字で始まるファイル名がエラーになる問題

Written By: 川俣 晶連絡先

文字についての注意 §

 下記記事中で、もし"\"が円記号ではなくバックスラッシュに見ている場合、これは通常の日本語Windows環境では円記号("¥")に読み替えてください。

問題 §

 NT版UNIX-like toolsに含まれるjoinfコマンド(関係データべースの合成)で、-oオプションに続けて数字で始まるファイル名を記述するとエラーになり実行されません。

発生例 §

 (NT版UNIX-like tools Version 0.06を使用。環境はWindows XP SP2のコマンドプロンプト上)

C:\>joinf -a1 -e 0 -j 1 -o 1.1 1.2 2.2 40.txt otherFile.txt

Usage: joinf [-a n] [-e string] [-j[1|2] m]

             [-o fieldlist] [-t c] file1 file2

対策1 §

 数字から始まるファイル名を記述する場合は、先頭に".\"を付加します。

C:\>joinf -a1 -e 0 -j 1 -o 1.1 1.2 2.2 .\40.txt otherFile.txt

対策2 §

 -oオプションの次にファイル名を記述しないようにします。

C:\>joinf -e 0 -j 1 -o 1.1 1.2 2.2 -a1 40.txt otherFile.txt

原因と対応について §

 原因は、-oオプションの仕様にあります。-oオプションは、オプションの引数が続けているのか、数字から始まるファイル名が記述されているかを原理的に完全に判別することはできません。たとえば、1.1のような表記は、どちらと解釈しても合法です。

 従って、この挙動は仕様とします。特に修正は行いません。

感想・私が作ったツールではないから焦った…… §

 電子メールでレポートをもらって焦りました。

 何せ、NT版UNIX-like toolsはもともと私が作ったものではありません。私は、DOSからNT(Win32)へとポーティングしただけです。その際、joinfというコマンドは私が欲しかったものに含まれず、ただ単に右から左に機械的にポーティングしただけで終わったものです。

 ですので、まずjoinfコマンドが何をするものかも分からないし、どう動作すれば正常かも分かりません。

 しかし、いざ分かってみると上記のような事情でした。

 joinfコマンドは、これが便利に使える人には非常に便利になりそうですね。

Facebook

キーワード【 川俣晶の縁側ソフトウェアその他開発日誌
【その他開発日誌】の次のコンテンツ
2005年
09月
13日
NT版UNIX-like toolsのcat, cmp, wcが常にテキストモードでファイルを開く問題
3days 0 count
total 2683 count
【その他開発日誌】の前のコンテンツ
2004年
06月
06日
NestedHtmlWriterでXHTML1.0の文書型宣言が誤っている問題
3days 0 count
total 2309 count

このコンテンツを書いた川俣 晶へメッセージを送る

[メッセージ送信フォームを利用する]

メッセージ送信フォームを利用することで、川俣 晶に対してメッセージを送ることができます。

この機能は、100%確実に川俣 晶へメッセージを伝達するものではなく、また、確実に川俣 晶よりの返事を得られるものではないことにご注意ください。

このコンテンツへトラックバックするためのURL

https://mag.autumn.org/tb.aspx/20050725114721
サイトの表紙【その他開発日誌】の表紙【その他開発日誌】のコンテンツ全リスト 【その他開発日誌】の入手全リスト 【その他開発日誌】のRSS1.0形式の情報このサイトの全キーワードリスト 印刷用ページ

管理者: 川俣 晶連絡先

Powered by MagSite2 Version 0.36 (Alpha-Test) Copyright (c) 2004-2021 Pie Dey.Co.,Ltd.