修正文件名/目录名的PowerShell脚本

计划写一系列整理文件用的脚本。例如根据id3来对mp3文件归档、根据exif信息来对照片归档、根据verycd上的资源名称对下载的文件归档……
这时候会遇到一个问题:Windows的文件系统是不允许某些特殊字符,以及设备文件名的。详细的限制请参见:http://zh.wikipedia.org/wiki/%E6%AA%94%E6%A1%88%E5%90%8D%E7%A8%B1。

查看更多

评论

用脚本批量下载www.cheat-sheets.org中的所有pdf文件

流水不腐,户枢不蠹。虽然批量下载有很多工具能做到,但是为了提高,我们尽量动手编写脚本吧。
http://www.cheat-sheets.org 里有很多好东西,我们把它批量下载下来。

查看更多

评论

新手从 0 开始学习 PowerShell 的路线

以下是我个人的PowerShell学习路线,也许可以节省您一些走弯路的时间,供参考。

查看更多

评论

批量更改csdn下载的文件名(UrlDecode)

例如csdn下载的一个文件名字为 %5B大家网%5DWindows.PowerShell应用手册%5Bwww.TopSage.com%5D.pdf,我们通过两行PowerShell脚本把它转化为正常的 [大家网]Windows.PowerShell应用手册[www.TopSage.com].pdf。量大的时候特别好用。

查看更多

评论

以GTD的思想整理目录的PowerShell脚本

这是花了一个晚上写的PowerShell脚本,可以把你的目录以GTD的思想整理得井井有条。
但是GTD功能已经完整并通过测试。github地址:victorwoo/Get-ThingsDone

查看更多

评论

在vim里转换HEX数据的显示

在做嵌入式设备开发和调试工作中,可能常常遇到以下场景,需要把:

0000:60 00 00 00 00 00 00 00  00 00 00 42 00 00 18 00  `....... ...B....:0015
0016:01 80 80 00 03 14 20 24  20 11 08 17 08 12 34 56  ...... $  .....4V:0031
0032:78 08 87 65 43 21 36 35  30 34 31 37 31 38 00 59  x..eC!65 041718.Y:0047
0048:30 30 30 30 30 30 30 30  30 30 30 31 30 30 30 30  00000000 00010000:0063
0064:30 30 30 30 49 43 41 52  44 30 30 30 30 30 30 30  0000ICAR D0000000:0079
0080:34 30 30 30 30 30 30 31  32 31 36 30 30 30 30 30  40000001 21600000:0095
0096:30 34 30 30 30 30 32 30  34 30 35 31 31 31 31 31  04000020 40511111:0111
0112:31 31 31                                          111              :0127

这样的文本,转换为单行,头尾部分不要,中间重复的空格也不要。如下:

60 00 00 00 00 00 00 00 00 00 00 42 00 00 18 00 01 80 80 00 03 14 20 24 20 11 08 17 08 12 34 56 78 08 87 65 43 21 36 35 30 34 31 37 31 38 00 59 30 30 30 30 30 30 30 30 30 30 30 31 30 30 30 30 30 30 30 30 49 43 41 52 44 30 30 30 30 30 30 30 34 30 30 30 30 30 30 31 32 31 36 30 30 30 30 30 30 34 30 30 30 30 32 30 34 30 35 31 31 31 31 31 31 31 31

这个可以用vim的替换来实现,命令是:
:%s/\d*:\(\(\x\|\s\)\{24}\) \(\(\x\|\s\)\{24}\).*\n/\1\3/g

我们还可以为它在.vimrc中定义一个快捷键映射:
map <C-H> :%s/\d*:\(\(\x\\|\s\)\{24}\) \(\(\x\\|\s\)\{24}\).*\n/\1\3/g<CR>
这样以后按一下CTRL+H键就搞定了。

评论