Windows Tips & News

Windows10でフォルダーの大文字と小文字を区別するモードを有効にする

click fraud protection

ご存知かもしれませんが、WindowsファイルシステムであるNTFSは、ファイル名とフォルダ名で大文字と小文字を区別しないものとして扱います。 たとえば、OSとアプリの場合、MyFile.txtとmyfile.txtは同じファイルです。 ただし、Linuxでは状況が異なります。 このOSの場合、これらは2つの異なるファイルです。 この動作の違いにより、WSLユーザーに問題が発生する可能性があります。 それらを解決するために、Windows 10には、フォルダーの大文字と小文字を区別するモードを有効にする機能が含まれています。

使用したことがある場合 Linux用のWindowsサブシステム、Windowsファイルシステム(/ mnt / c、/ mnt / dなどの下にマウントされている)を大文字と小文字を区別して扱うことができることをおそらくご存知でしょう。 これは、特に、名前が大文字と小文字だけが異なるファイル(foo.txtやFOO.TXTなど)を作成できることを意味します。

ただし、これらのファイルをWindowsで使用することは実際には不可能でした。 Windowsアプリケーションはファイルシステムを大文字と小文字を区別しないものとして扱うため、大文字と小文字のみが異なる名前のファイルを区別することはできません。 ファイルエクスプローラーには両方のファイルが表示されますが、どちらをクリックしたかに関係なく、1つだけが開かれます。

Windows Insider Build 17093以降、Windowsで大文字と小文字を区別するファイルを処理する新しい方法があります。ディレクトリごとの大文字と小文字の区別です。 この機能は、大文字と小文字を区別するファイルを使用する際の相互運用性を向上させるために追加されました。 また、通常のWindowsアプリケーションで使用できます。 Windows 10ビルド17110以降、この動作はデフォルトです。

詳細

Windowsでの大文字と小文字の区別

Windows NTファミリのオペレーティングシステム(Windows 10を含む)には、常に大文字と小文字を区別するファイルシステム操作を実行する機能がありました。 アプリケーションは合格することができます FILE_FLAG_POSIX_SEMANTICS にフラグを立てる CreateFile

 パスで大文字と小文字を区別するように処理することを示すAPI。 ただし、互換性の理由から、この動作をオーバーライドするグローバルレジストリキーがあります。 このキーを設定すると、ファイル操作で大文字と小文字が区別されなくなります。 FILE_FLAG_POSIX_SEMANTICS フラグが指定されています。 Windows XP以降、これがデフォルトになっています。

Linux用のWindowsサブシステムは、それ自体がそのレジストリキーをバイパスする別のメカニズムを使用して、大文字と小文字を区別するファイルシステム操作を実行できるようにします。 これにより、WSLで実行されているLinuxアプリケーションは、グローバルレジストリキーが設定されている場合でも、実際のLinuxで使用できるのと同じように、大文字と小文字だけが異なるファイル名を使用できます。

残念ながら、これにより、Windowsアプリケーションからアクセスできないファイルが残ります。 グローバルレジストリキーを変更することはできますが、それでも、を使用するアプリケーションでのみ機能します。 FILE_FLAG_POSIX_SEMANTICS、これにより、すべてのドライブ上のすべてのファイルの動作が変更されます。これは、意図されていない可能性があり、一部のアプリケーションを破壊する可能性があります。

ディレクトリごとの大文字と小文字の区別

この問題を解決するために、Microsoftはディレクトリに適用できる新しい大文字と小文字を区別するフラグを追加しました。 このフラグが設定されているディレクトリの場合、そのディレクトリ内のファイルに対するすべての操作では、大文字と小文字が区別されます。 FILE_FLAG_POSIX_SEMANTICS 指定されました。 これは、大文字と小文字が区別されるとマークされたディレクトリに大文字と小文字のみが異なる2つのファイルがある場合、すべてのアプリケーションがそれらにアクセスできることを意味します。

フォルダの大文字と小文字を区別するモードを有効にする

この機能を有効または無効にするには、組み込みのfsutil.exeアプリを使用する必要があります。

フォルダの大文字と小文字を区別するモードを有効にするには、 以下をせよ。

  1. 開ける 昇格したコマンドプロンプト.
  2. 次のコマンドを入力します。
    fsutil.exeファイルsetCaseSensitiveInfo「フォルダへのフルパス」を有効にする

    パス部分をPCに一致する正しいパスに置き換えます。
    例えば、

    fsutil.exeファイルsetCaseSensitiveInfo "C:\ data \ Winaero \ Linux" enable
  3. これで完了です。

これで、同じ名前で大文字と小文字を区別するだけで2つのファイルを作成できます。 Windows 10は、この特定のフォルダーでそれらを正しく処理します。

フォルダの機能ステータスを確認するには、コマンドを実行します

fsutil.exeファイルqueryCaseSensitiveInfo「フォルダへのフルパス」

例えば、

fsutil.exeファイルqueryCaseSensitiveInfo "C:\ data \ Winaero \ Linux"

次のようなものが表示されます。

ついに、 フォルダの大文字と小文字を区別するモードを無効にするには、管理者として開いたコマンドプロンプトで次のコマンドを実行します。

fsutil.exeファイルsetCaseSensitiveInfo "C:\ data \ Winaero \ Linux" disable

正しいフォルダパスを使用すれば完了です。
ノート: 空でないフォルダのCaseSensitiveInfo属性を無効にすることはサポートされていません。 フォルダを無効にする前に、フォルダからすべてのファイルを削除する必要があります。

それでおしまい。

PowerToys 0.62 には、新しいツール、スクリーン ルーラー、クイック アクセント、およびテキスト エクストラクタが付属しています

PowerToys 0.62 には、新しいツール、スクリーン ルーラー、クイック アクセント、およびテキスト エクストラクタが付属しています

Microsoft は本日、有名な PowerToys アプリ セットの新しいバージョン 0.62 をリリースしました。 通常の修正と一般的な改善に加えて、アップデートには 3 つの新しいツール...

続きを読む

Windows 11 では、インストール済みのビルドを Windows Update から再インストールできるようになります

Windows 11 では、インストール済みのビルドを Windows Update から再インストールできるようになります

Windows 11 ビルド 25284 では、オペレーティング システムに新しい機能が追加されました。 「Windows Update を使用して問題を解決する」と呼ばれ、インストール メディ...

続きを読む

Windows 11 ベータ ビルド 22623.1245/22621.1245 (KB5022358) は、タスク マネージャーと RDP を修正します

Windows 11 ベータ ビルド 22623.1245/22621.1245 (KB5022358) は、タスク マネージャーと RDP を修正します

返信を残すMicrosoft は、新しい Windows 11 バージョン 22H2 ビルド 22621.1245 および 22623.1245 をリリースしました。 これらは、KB502235...

続きを読む