[samba-jp:19636] Re: smbfnconvがFreeBSDでエラーになる

Takahiro Kambe taca @ back-street.net
2007年 8月 2日 (木) 00:51:17 JST


In message <46AF196A.9020102 @ miraclelinux.com>
	on Tue, 31 Jul 2007 20:13:46 +0900,
	MORIYAMA Masayuki <moriyama @ miraclelinux.com> wrote:
> 森山です。
> 
> KAWAFUJI Mitsuhiro wrote:
> >     # smbfnconv -f cap -t eucjp-ms -p ../tmp.samba2
> >     find: illegal option -- p
> >     find: illegal option -- r
> >     find: illegal option -- i
> >     find: illegal option -- n
> >     find: illegal option -- t
> >     usage: find [-H | -L | -P] [-EXdsx] [-f file] [file ...] [expression]
> > 
> >  perlスクリプトであるsmbfnconv内のfindの引数の-printがエラーを起
> > こしているのだろうというところまではわかるのですが、perlに明るくな
find(1)がエラーを起こしている原因ですが、

> find コマンドに関しては、GNU findutils をインストールして、そちらが実行
> されるように PATH を追加して、試していただけないでしょうか。
といった問題ではなくて、smbfnconvの使い方が間違っていませんか。

-pオプションでリンクを作成するディレクトリを指定していますが、肝心の
変換を行う元のパスを指定していません。このため、

	find foo -print

となるべきところが、

	find -print

と、検索を始めるパスが指定されずにfind(1)を実行し、その結果"-print"を
検索を始めるパスの前に指定するfind(1)のオプションと解釈されたエラーと
なっているのでしょう。sbmfnconvがfind(1)に渡す引数をチェックすれば回避
できるのではないかと思います。

要は、

	# smbfnconv -f cap -t eucjp-ms -p ../tmp.samba2 .

と、最後にカレント・ディレクトリ(?)を示す引数が足りないのでは?

-- 
神戸 隆博 / Takahiro Kambe




samba-jp メーリングリストの案内