proxy代理   soft软件   IT 业界特快   norton 诺顿病毒库   代理列表   search FTP搜索   whois IP地理位置   blog 追求完美  
money理财   life生活   RSS聚合门户   firefox WEB浏览器   免费域名   typeset 假古文   AntiVirus 反病毒   ipcn 站点导航  

« 写了个 checklink 链路健康检查(延时 丢包率) | Main | 全串匹配 长度相等 »

December 7, 2006

处理 windows 下 ls-lR 的正则表达式

版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明。
https://windtear.net/archives/2006/12/07/001157.html
http://windtear.net/archives/2006/12/07/001157.html

处理 windows 下 ls-lR 的正则表达式

一定要用正则 而不能用 split 然后判断非空增加下标
比如如果文件/目录名最后有空格字符用split就不行了

Linux lslR 的处理正则表达式:
/^([a-z-]{10})\s+(\d+)\s+(.*?)\s+(.*?)\s+(\d+)\s+(\w+)\s+(\d+)\s+([\d:]+)\s+(.+)$/x

Windows lslR 的处理正则表达式:
/^([a-z-]{10})\s+(\d+)\s+(.*?)\s+(.*?)\s+(\d+)\s+(\d+)-(\d+)-(\d+)\s+([\d:]+)\s+(.+)$/x

三个区别
1. 日期格式不同
2. 用户名 windows 有可能是带空格的
3. windows 下有 \r 回车字符
后两个区别倒是不影响正则表达式的写法
我们关注的信息是文件大小 文件日期 文件名 其余都无所谓了
$filename =~ s/\r//g;
本blog WWW

Posted by windtear at December 7, 2006 11:46 PM

本站使用中的任何问题,请与 windtear @ windtear.net 联系
Copyright© 1999-2024 Windtear. All rights reserved.