我工作中常常在Ubuntu linux与Windows Vista之间切换来切换去。不同的操作系统在发展过程中不断地学习竞争对手的长处:Vista的Explorer更像GNOME Nautilus了;UAC(User Account Control)机制的屏幕显示效果与gksu异曲同工;Vista的C:\Users文件夹以及桌面上的用户文件夹更像是/home的翻版;而Vista和Ubuntu 7.04的网络监视小图标在功能和用法上也趋于一致了。对于用户来说,操作系统使用经验和习惯的迁移也是一个有趣的问题。用熟了Linux,不如假装Vista是Linux,做一些有趣的应用:
1、“容错”命令
如果直接要在Windows下使用类Unix控制台,cygwin当然是首选。但通常情况下还是Windows命令提示符用得较多。用惯了Linux,难免会在Windows命令提示符下随手敲出ls、cp等Linux命令。与其这样,不如直接建立一些批处理文件,指向对应的Windows控制台命令。例如:
ls.bat:
@dir/a/w
cp.bat:
@xcopy %1 %2
有时候需要使用管理员权限,也不必去敲参数冗长的runas命令,直接做一个su吧:
su.bat:
@runas /user:administrator "cmd"
对于这些批处理命令的存放位置,Windows系统目录是一个选择,但命令多了不易管理。因此建议自建一个目录专门存放自定义命令,然后在系统的Path环境变量中追加这个目录。
2、适时地“sudo”
Windows Vista的UAC机制使得操作的安全性得以提升,但现有的不少应用程序在开发过程中没有考虑到操作权限问题,往往默认自身有权操作,在被系统禁止之后则会弹出一些奇怪的错误,使用户不得其解。例如“快乐影音”在修改文件关联的时候就会出错。有经验的Linux用户看到这种信息应该会想到会不会是“Permission denied”了呢?试试用“run as administrator”方式运行一下,这次便成功了!看来Windows下也需要适时地“sudo”。
3、符号连接用处大
Linux下符号连接被广泛使用。符号连接不是ext3文件系统的专利,NTFS也支持称为junction符号连接特性。Vista的C:\Users目录与C:\Documents and Settings目录之间的关系便是一个利用junction来保持软件兼容性的实例。当某些分区空间紧张的时候,可以利用junction将其中的一些目录映射到其它分区进行存储。例如在安装Adobe Web PRemium CS3时需要在系统分区放置近1G的共享文件,我们可以新建名为“C:\Program Files\Adobe”、“C:\Program Files\Common Files\Adobe”符号连接,指向其它分区的某些目录。管理符号连接的junction.exe工具可以在微软网站提供的Sysinternals Suite中得到。符号连接在Windows中的其它应用有待继续发掘。