我有一个奇怪的(不要问)需要看一些Win XP cmd shell DIR
命令的一些例子,用于很多(某些)不同的本地化版本的windows(例如法语,西班牙语等) )。
我需要的具体命令是(注意这个命令很重要......如果你不打扰使用这个命令那么就不用费心了):
dir /4 /-c /t:a /n /a:-d-h-s
我知道这是一个疯狂的希望,但我希望无论本地化如何都能够斩断/解析输出。
答案 0 :(得分:2)
可能不是您想听到的内容,但我们在依赖Windows不同本地化行为时发现了各种各样的问题。
我们有一个cmd文件在美国英语中运行良好但是当我们发送它进行本地化时,他们发现了各种各样的问题,我们必须支持大约23种不同的版本。
最后,编写(实际C)代码以通过Win32获取信息并以我们想要的格式输出它更容易。这消除了对特定本地化格式和配置问题的依赖(某些命令的输出方式不同,不仅基于区域设置,还基于用户配置)。
我的建议:找到另一种方法。
答案 1 :(得分:1)
波兰语Windows Vista输出:
C:\Users\Karol>dir /4 /-c /t:a /n /a:-d-h-s
Wolumin w stacji C to OS
Numer seryjny woluminu: 3EC1-6B83
Katalog: C:\Users\Karol
2009-12-10 21:19 2263 intlname.ols
2009-07-23 21:17 1480 laptop_to_epia.ppk
2009-07-23 21:17 466 laptop_to_epia.pub
2010-01-31 09:49 10392 _viminfo
4 plik(ów) 14601 bajtów
0 katalog(ów) 10880864256 bajtów wolnych
答案 2 :(得分:0)
以下是韩国XP的输出:
C µå¶óÀ̺êÀÇ º¼·ý¿¡´Â À̸§ÀÌ ¾ø½À´Ï´Ù.
º¼·ý ÀÏ·Ã ¹øÈ£: 7C33-7DCE
C:\WINDOWS\system32 µð·ºÅ͸®
2009-02-02 ¿ÀÈÄ 11:39 1697 $winnt$.inf
2008-02-19 ¿ÀÈÄ 09:07 2151 12520437.cpx
2008-02-19 ¿ÀÈÄ 09:07 2233 12520850.cpx
2008-02-19 ¿ÀÈÄ 09:06 100352 6to4svc.dll
2008-02-19 ¿ÀÈÄ 08:47 1460 a15.tbl
(似乎在转移过程中失去了unicode ......但为了我的目的,没关系)。
答案 3 :(得分:0)
当然......这是错误的方式......但需要必须/恶魔驱动。根本问题是命令运行的机器无法修改/依赖。解析/斩波非常小(拉出文件名,文件大小和创建日期)。好消息是文件名保证不包含任何空格。这意味着split()的最后两个字段是文件名和大小,前N个字段是日期(注意我不需要日期作为日期,只需一个字符串就可以了)。棘手可能涉及确保unicode正确移动(与韩国示例不同)。