ファイル名とディレクトリ名の区切り文字として2つのドット(..)または2つのダッシュ(--)を使用する

ファイル名とディレクトリ名の区切り文字として2つのドット(..)または2つのダッシュ(--)を使用する

区切り記号として二重点または二重減算記号を使用するのは良い考えですか?私は実験科学データのための良い命名規則を見つけようとしています。たとえば、

2017-12-11T19-45..JDoe-042..UO2(NO3)2-EtOAc_dist..150.3K..1.234mM.dat
2017-12-11T19-45--JDoe-042--UO2(NO3)2-EtOAc_dist--150.3K--1.234mM.dat

私の理由:

  1. プラットフォーム間の互換性を確保するために、適切な文字はその文字_ - .の組み合わせだけです。
  2. 私の考えでは、それらのどれも一人で働く人はいません。:
    • _スペースを残してください。式は大文字と小文字を区別するため、camelCaseは使用できません。
    • -:内部のラボコードの一部であることが多く、時間(修正されたISO 8601表記)と比率のコロンの代わりに使用されます。
    • .小数点です。
  3. これらの組み合わせの中で最も人気のあるものは、そうだ、はい_-_。ところがこれが3文字なのに、すでにファイル名がかなり長いので(例で見られるように)可能であれば2文字で付けたいと思います。
  4. 視覚的に、そしてvsとvs__の違いをすばやく区別することは困難です。 _---...
  5. 私はカンマ(コメントで正しく提案されているように考慮すべき実行可能文字)を含めませんでした。なぜなら、すでに主に数値に対して小数点を保持している,単一点と混同しやすいと思うからです。.

SEネットワークの複数の投稿によると、例えば

--私は両方とも完全に受け入れられると思い、..最終選択を検討しています..。しかし、特に正規表現やPythonスクリプトがこれらのファイルやフォルダをどのように扱うかについてはわかりません。どちらの経験もほとんどありませんが、学んでいます。

特別なソフトウェアの動作にかかわらず、これらの区切り文字は通常、一般的なファイルシステムやスクリプト言語にとって安全であると思いますか?

答え1

そのうちの一つUnix/Linux で綿密に調査され、推測された設計決定ユーザーにとって有利に機能するファイルシステム機能です。以下を除くすべての文字はファイル/ディレクトリ名に使用できます。ゼロ \0(ASCII 000)と減らす /(後者はファイル用に予約されています。)。

POSIXと互換性があるか、よく書かれたプログラムとスクリプトはこれらの寛大さを扱いますが、残念ながらそうではない例は数多くあります。しかし、ドットやダッシュではなく、非常に具体的な文字セットを吐き出す傾向があります。 (空白と改行は2つの最も面倒な病気です。)実際には、ドットとダッシュはかなり広く使用されています。一般的なツール、言語、正規表現はこれをうまく処理します。

...しかし、1つの例外があります。(もちろんでしょうか?) そうしようとする意図は全く見えません。しかし、注意すべき点は名前の前にダッシュを使用しないでください。もちろんこれは正当ですが、これらの名前を誤って処理してコマンドラインオプション/フラグとして解釈されるプログラムが多すぎます。たとえば、あるスクリプトが次のようにファイル名を別のスクリプトに渡すと、次のsome-script --my-dash-first-file ...内容が表示されますUnknown option '--my-dash-first-file'

長い話を短くあなたが提案したソリューションは安全ですもし次の名前は使用しないでください。スタートダッシュで。

追加の警告:特にファイルのデフォルト名をファイルの「拡張子」(例えばfoo.txt)と区別するために、ドット自体が一般的ですが、ドットペアはしばしば単独で表示され、特別な意味を持ちます。現在の親ディレクトリディレクトリ(..)または/foo/bar/../bazpath()の古いディレクトリ。したがって、技術的な問題は発生しませんが、名前の二重点はわずかにユニークで、一部のユーザーが躊躇する可能性があります。


関連情報