2017-01-31 5 views
0

Windows 10でmksh(MirBSD Korn Shell)を使用しています。以前のUWin kshに慣れていて、Win7の大文字小文字を気にせずに数回トリップしました「はls」はために、ケーシングのファイルを参照していない場合:私が試したmkshの大文字と小文字を区別しないでファイル名を一致させる方法

PC> ls *old 
    ls: cannot access '*old': No such file or directory 
    PC> ls *OLD 
    filename.OLD testing.OLD 

を「shopt -s nocaseglob」、「-lタイプセット」および同様のbash、「完了は、無視するケースを上に設定」 -isms。 kshでは何がうまくいくのですか?

注:これはではありません。正規表現では大文字と小文字の区別がありません。 ありがとう

答えて

1

mksh開発者はここにあります。

これは起こりません(特に、ファイルシステムは通常大文字と小文字が区別され、Windows/NTとMac OSXでも同じように設定できます)。

ls *.[Oo][Ll][Dd]で大文字と小文字を区別することはできませんが、それだけです。

+0

すぐにお返事ありがとうございます!しかし、私は理解していません。Windows上で動作する他のシェル(古いkshなど)は、大文字と小文字を区別しません。なぜ "これは起こりそうにない"なのか?十分な需要がないか、またはそれが難しいためですか? – murspieg

+0

'mksh'の最大の強みの1つは、**サポートされているすべての動作環境**の一貫した**動作をすることです。つまり、特別な扱いはありません(ほとんどの場合、Android-、Plan 9-、MirBSD特有の癖はシェルには影響しません)。たとえば、WindowsまたはOS/2上のmkshはCRLF行の終了を使用しないため、スクリプトの互換性が最大限になります(「mksh-os2」というフォークも同様です)。 •また、Windowsでmkshを実行していない可能性が最も高いですが、Cygwinなどでも、Ubuntu-on-Windowsでもそうです。どちらもUnix環境です。 – mirabilos

+0

。 (実際には、私はペースト用のウインドウのオプションが好きなので、UWinのkshの上で走っています。)返事を取ってくれてありがとう。 – murspieg

関連する問題