1

Forfilesスウェーデン語の文字を使用するとスムーズに動作しません...

私はスウェーデンのコンピューターを使用していますが、スウェーデンのForfiles文字の扱いは非常に奇妙です。それはある瞬間を正しく扱い、次の瞬間には馬鹿にすることができます。私はこの問題に長い間苦労してきましたが、解決策を見つけたと思います。私の経験 (なし) から、それを難し​​くしているのは forfiles のさまざまな操作であることがわかります。

CHCP 65001それを機能させるには、バッチファイルで使用する必要があります。forfilesを除いて、すべてこのコードページで動作しCALLます。その後、トラブルに巻き込まれます。

私の解決策は、その部分だけを CHCP に変更することでした1252。完全には機能しませんでしたが、すべてを取得して「some textfile.txt」ファイルに送信すると、突然すべてが機能します。フォルダー名にスウェーデン語の文字を使用できるようになりました。

引数が機能するには特別なコードページが必要なようですがCALL、残りのコードでそれを使用すると失敗します...

ただし、1 つ質問があります。なぜこのような奇妙な動作をする>myfile.txtのでしょうか。また、機能させるために最後に を付ける必要があるのはなぜですか?

` CHCP 65001

forfiles /S /m * /c "cmd /c if @isdir==TRUE COPY myfile.bat @path"`

(これは、フォルダーにスウェーデン文字 ( åäö) が含まれていても機能しますが、コードページ 1252 を使用すると失敗します。Myfile.bat はすべてのフォルダーに配置され、以下で が呼び出されると、フォルダー コンテンツの html ページを作成します)。

`CHCP1252

forfiles /S /m "myfile.bat" /c "cmd /c CALL @path" >> some textfile.txt`

(これはコードページ 65001 を使用すると失敗しますが、コードページ 1252 では完全に機能します。テキストファイルが必要です。それがないと失敗します。各フォルダーにページをビルドします。)

DEL some textfile.txt

(ファイルはただのゴミなので削除されます (このファイルが必要なのがおかしい))

CHCP 65001

(コードページ 65001 に戻して、他のすべてが機能するようにします。以下のコードは、見つかったすべてのフォルダーへのリンクページを作成し、作成されるすべてのページで同じです。)

forfiles /S /m * /c "cmd /c if @isdir==TRUE ECHO @path" >>anotherfile.txt

(ご回答ありがとうございます。もう少しわかったら、今すぐ再構築します。小さなステップ、小さなステップ...)

4

0 に答える 0