2011-01-17 41 views
-2

を "正常化" の可能性の重複:
recursively “normalize” filenames再帰的にファイル名

ペーストビン上のQファイルを再帰的に名前を変更できるスクリプトを作成しました[http://pastebin.com/raw.php?i=kXeHbDQw]
例えば:前:

これは私のファイルをi.s(1)スクリプトの実行後に

を.txtで:

この-I-S-MY-ファイル1.TXT

[OK]を。

:しかしここにある私は、このようなファイル名で、 "完全に" それをテストしたいとき[http://pastebin.com/raw.php?i=LQ07ntcS]

¤¥|§¨©ª«¬®¯°±²³'μ¶・¸
áíüűúöőóéÁÍÜŰÚÖŐÓÉøùûýþÿ.txt¹º»¼½¾¿ÀÂÃÄÅÆÇÈÊËÌÎÏÐÑÒÔÕ×ØÙUÛUÝÞßàâãäåæçèêëìîïðñòôõ÷」の#$%& '()+、:;?< => @ []^_ {|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ¡¢£.txt<br> <br> it fails [http://pastebin.com/raw.php?i=iu8Pwrnr]:<br> $ sh renamer.sh directorythathasthefiles<br> mv: cannot stat./áíüűúöőóéÁÍÜŰÚÖŐÓÉ!"#$%& \'!( ) +、:; < => @ []^{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ¡¢£': No such file or directorymv: cannot stat./áíüűúöőóéÁÍÜŰÚÖŐÓÉ!"#$%& \ '()* +、:;?< => @ []^{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ¡¢£': No such file or directorymv: cannot stat./áíüűúöőóéÁÍÜŰÚÖŐÓÉ!"#$%& \'?( ); +、:; < => @ []^_ {|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ¡¢£': No such file or directorymv: cannot stat./áíüűúöőóéÁÍÜŰÚÖŐÓÉ!"#$%& \ '() +、:;?< => @ []^{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ¡¢£': No such file or directorymv: cannot stat./áíüűúöőóéÁÍÜŰÚÖŐÓÉ!"#$%& \'?( )* +、:; < => @ []^{|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ¡¢£': No such file or directorymv: cannot stat./áíüűúöőóéÁÍÜŰÚÖŐÓÉ!"#$%& \ '()+、:;?< => @ []^_ {|}~€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ¡¢£': No such file or directorymv: cannot stat./áíüűúöőóéÁÍÜŰÚÖŐÓÉ!"#$%& \'?( ) +、:; ?<は=> @ []^_ `{|}〜€、ƒ「...†....というように
$

ので、 "MVは" 特殊文字を扱うことができません..:\

私は何時間も働いていました。

誰かが働いていますか? [その2行でも文字[ファイル名]を扱うことができますか?]

+1

そのbashスクリプトはterri-badです。あなたはPythonを使用していますか? – bukzor

+1

12の質問があり、答えは受け入れられませんか?いいえ... – DarkDust

+0

[SF](http://serverfault.com/questions/223514/recursively-normalize-filenames)と[SU](http://superuser.com/questions/234448/recursively)にクロス投稿されています。 -normalize-filenames)を指定します。 –

答えて

0

あなたのシステムには何が起こっていますか?あなたは元気なアプリケーションとセキュリティを再構築し、注意を払うことを考慮する必要があります。

しかし、もし私がそれを見ているならば、あなたはコマンドの引数の最大長を実行している可能性が非常に高いでしょう。

もしそうでない場合は、UTF8ロケールをインストールしてシステムのデフォルトとしてインストールしてください。Debianのベースのシステムで

これはまたあなたの受け入れ率に取り組むdpkg-reconfigure locales

の通常だけの問題です。そのスクリプトを読むことはほとんど苦痛だった

2

... 1については

、あなたはthisをお読みください。

次に、約bash functionsを読んでください。その後、あなたはおよそsed

trが次にあなたがこれを考慮すべきで読んでください:あなたは本当に移動ファイルあなたがその名前に変換を実行するたびにしたいですか?

それでこのことを考えた後、あなたは少し辛口なことを思いつくべきです。