\ /:*などの特殊文字を使用してフォルダ名またはファイル名を作成する方法 "<> | [重複]


9

私の問題は、\ /:*などの特殊文字を使用してフォルダまたはファイルの名前を指定できないことです。"<> | WindowsベースのOSの場合これは私にとって非常に重要であり、このタイプの文字を含むファイル/フォルダの名前を指定します。

私はすでにこの問題のために非常に多くのサイトを検索して参照していますが、すべては絶望的です。Microsoftサポートページも読んでいますが、他の文字を使用することをお勧めしています。これはそのリンクです、https://support.microsoft.com/en-us/kb/177506

私はすでにAltボタン+このタイプの特殊文字のASCIIコード番号をテンキーから試しています。ファイル/フォルダーの名前を変更し、Alt + 60を押します(<文字の場合)。文字:\ /:*?"<> |

このタイプの特殊文字でファイル/フォルダーの名前を指定できるように、適切な解決策を提案してください。


気になるだけ:何のために必要ですか?
カミルMaciorowski 16

@ kamilこれは私のファイル/フォルダの名前を与えるためのものであり、私にとって1つの挑戦的なタスクです。
Kirit_Vanani

PIMP_JUICE_IT私はすでに(LITERALSTRING -LiteralPath、それをしなかったが、それでも成功を取得できません@。
Kirit_Vanani

これらの文字でファイルを作成できたとしても、プログラムでファイルを開いたり保存したりすることはできません。
Keltari

10
–肘をなめるにはどうすればよいですか。–できません。- しかし私はしなければなりません。–腕を骨折して試すことはできますが、腕は役に立たなくなります。–気にしないで、ひじをなめるだけです。
カミルMaciorowski 16

回答:


16

これは私にとって非常に重要です。これらの文字を含むファイル/フォルダの名前を付けます。

それはあなたにとって重要かもしれませんが、これを手放し、問題を解決する別の方法を見つける必要があります。

これらの文字は、ファイル名を処理するWindows OS関数呼び出しでは許可されていません。

これらは別の用途があるため、特に許可されていません。

  • \-パス区切り文字およびエスケープ文字として使用するために予約されています
  • / -パス区切り文字として使用するために予約済み
  • : -ドライブ名区切り文字として使用するために予約済み
  • *および?- ワイルドカード文字として使用するために予約されています
  • "- スペースを含む名前を引用するために予約されています
  • <, >および|-コマンドのリダイレクト演算子として使用するために予約されています

もちろん、別のオペレーティングシステムを使用して、これらの文字を含む名前のファイルを作成することもできます(そのオペレーティングシステムがWindowsファイルシステムを読み書きできる限り)。

ただし、Windowsプログラムを使用してこれらのファイルを操作することはできず、ファイル名を理解できず、エラーが発生します。


ファイル、パス、名前空間の命名

命名規則

次の基本的なルールにより、アプリケーションは、ファイルシステムに関係なく、ファイルとディレクトリの有効な名前を作成および処理できます。

...

Unicode文字や拡張文字セット(128〜255)の文字を含む、現在のコードページの任意の文字を名前に使用します。ただし、次のものは除きます。

  • 次の予約文字:

    < (less than)
    > (greater than)
    : (colon)
    " (double quote)
    / (forward slash)
    \ (backslash)
    | (vertical bar or pipe)
    ? (question mark)
    * (asterisk)
    
  • 整数値ゼロ。ASCIINUL文字と呼ばれることもあります。
  • 整数表現が1〜31の範囲の文字。ただし、これらの文字が許可されている代替データストリームは除きます。ファイルストリームの詳細については、「ファイルストリーム」を参照してください。
  • ターゲットファイルシステムで許可されていないその他の文字。

ソースの名前付けファイル、パス、名前空間


でもとにかくこれをやりたいです。

cygwinをインストールして使用しますtouch

私はすべての可能性をテストしていませんが、次の作業:

touch :
touch \|
touch \"
touch \>

出力例:

DavidPostill@Hal /f/test/impossible
$ ll
total 0
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:03 '"'
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:02 :
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:02 '|'
-rw-rw-rw-+ 1 DavidPostill None 0 Aug 10 21:07 '>'

ご覧のとおり、Windowsでは使用できません。

F:\test\impossible>dir
 Volume in drive F is Expansion
 Volume Serial Number is 3656-BB63

 Directory of F:\test\impossible

10/08/2016  21:07    <DIR>          .
10/08/2016  21:07    <DIR>          ..
10/08/2016  21:03                 0 
10/08/2016  21:02                 0 
10/08/2016  21:07                 0 
10/08/2016  21:02                 0 
               4 File(s)              0 bytes
               2 Dir(s)  1,772,601,536,512 bytes free

ここに画像の説明を入力してください


私はあなたの答えに感謝します、それは少し役に立ちますが、私の問題は同じままです。これらの特殊文字で名前を変更する他のスーパーユーザーの方法はないと思います。
Kirit_Vanani

2
@Kiritこれらの文字を使用してファイルを作成できますが、Windowsはそれらを使用して何もできず、Windows内からこれらのファイルを使用しようとするとエラーが発生します。
DavidPostill

@DavidPostillああ、それらの文字でファイル名を作成する方法。エラーが発生してもかまいませんが、次のタスクはこれらのタイプのキャラクター名を指定することです。このファイルにアクセスするには、他のLinuxベースのOS
Kirit_Vanani

1
@Kirit私はすでに「別のオペレーティングシステムを使用してこれらの文字を含む名前のファイルを作成できます(そのオペレーティングシステムがWindowsファイルシステムを読み書きできる限り)」とすでに答えました。
DavidPostill

3
@Kirit私はすでにそれは不可能だとあなた言った。
DavidPostill

3

独自のフォントセットを作成します。使用しない文字を予約文字の画像に置き換えてください。


1
それか似たキャラクターを使っています。Unicodeでは、何でも可能です。🎃–
ダニエルB

@ Craig620私には不可能かもしれません。ヒントを教えてくれます。
Kirit_Vanani 2016

わからない、頭に浮かんだクレイジーなアイデアだけ。たぶん、あなたが尋ねることができるタイポグラフィや出版のためのStack Exchangeフォーラムがありますか?
クレイトン

2

Windowsでは、これらの文字でファイルを作成することはできません。解決策はありません。これらの文字はWin32 APIによって禁止されています。

Win32はPOSIX名前空間のサブセットであり、大文字と小文字を区別しません。'"' '*' '/' ':' '<' '>' '?'を除くすべてのUnicode文字を使用します。'\' '|' 注意:名前の末尾をドット「。」またはスペース「」にすることはできません。

- http://dubeyko.com/development/FileSystems/NTFS/ntfsdoc.pdf


NTFSは問題ではありません。(実際には、これらの文字は問題なく許可されています。Interixをサポートするには、そうする必要がありました。)問題はWindows自体です。つまり、基になるFSに関係なく、Win32 APIによって制限が課されます。
user1686

@grawity、あなたは私のさらなる調査に基づいて正しいようです。私はこれを反映するために私の回答を編集しました。
ChrisInEdmonton

NTFSは問題ないと思います。それはいくつかの解決策を持っている必要があります。LinuxベースのOSからNTFSドライブにアクセスすると、これらのタイプの文字を入力できる場合があります。
Kirit_Vanani

「名前の末尾をドットにすることはできません」。不正解です。で終わる名前をファイルできます.。あなただけの彼らと多くを行うことはできませんcmd:)
DavidPostill

1
@Kiritあなたは何度も言われていることができません
DavidPostill
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.