UP | HOME

在 Windows 7 下工作

Table of Contents

由于我的 Dell N4110 笔记本在安装 Linux 时遇到不少问题,主要是发热量大及双显卡切换。从 Ubuntu 切换到我喜爱的 Arch Linux, 试了不少办法,仍没有解决主要问题。尽管我最顺手的系统仍然是 Linux, 但在 Windows 7 下工作了一段时间倒也顺手了,也没有必要在双系统间来回切换。以前一直纯粹使用 Linux, 一是真心喜爱,二是为推广 GNU/FSF 的理念做个表率和拒绝盗版。现在工作很忙,精力不够,并且我的 Windows 7 是正版的,没必要花了钱不用。另外,重要的是你的工具,操作系统算是你存放工具的箱子罢了,顺手了也就行了。因此,我的 Dell N4110 也就只保留一个 Windows 7 64-bit 系统了。

鉴于 360 之类的流氓软件占据了大部分国人的计算机,比如我所在的科研单位里有一半以上办公微机都装有 360, 有的是他人推荐,有的是自行选择,有的则是莫名其妙就装了。因此,想顺便介绍一下我在 Windows 7 下的工作方式,尤其是一些软件的选择,想与大家交流一下操作系统的使用经验,一起远离流氓软件。

我使用计算机主要的内容有:文献资料、实用程序、程序开发、网络应用、娱乐游戏,以及一些专门的程序。本文中提到的软件基本上都有中文版本,但大部分提及的网页内容都是英文的,我不太了解有多少中文页面介绍它们,如果你的英文阅读吃力,请自行搜索相应的中文介绍。请见谅。

一个特色之处:我选择的软件绝大部分都是开源或免费的产品。

日常办公

文献资料

我的资料以 PDF, HTML 及纯文本为主,兼有 Word, PowperPoint 等格式。PDF 是国际通用的文档标准,而 M$ Word/PowerPoint/Excel 等均不是。有大量 Linux/Mac 用户并不使用 M$ Office, 甚至一部分 Windows 用户也是如此。我不喜欢别人给我 M$ Office 文件,但单位与国家管理部门强制性的文件几乎全是 Word 格式,甚至连国产的 WPS 格式都不支持 (所谓的支持国产体现在哪里呢?),这个也只得接受现实了。

文献在 WIN7 下没有问题,并且 M$ Office 阅读器还是在原生的系统下最舒服。但我默认的文档格式是 PDF 与 UTF-8 纯文本。任何人给我的 Word/PPT 之类的文件,我一般顺手转换成与 PDF/A (即 ISO 19005-1) 标准兼容的文档存放。常用的转换工具有:

关于 PDF 文档的阅读器,有很多种。其中 Adobe PDF Reader 是免费提供的,但体积庞大,启动较慢,耗用系统资源较多。不过优点是格式支持最全:像内嵌 JavaScript 代码的运行、 PDF 3D 等。除非你经常使用特殊格式的 PDF 文档,否则不推荐在日常使用它。推荐一款小巧的代替品 – SumatraPDF:

如果有太多电子书的话,比如一大堆的 epub, chm, pdf 文档,不妨试试 Calibre.

经常在网络上读一些网页,有一些资料需要顺手保存,不妨试一试 Zotero. 它首先是一个 FireFox 浏览器的扩展插件,后来也提供了独立运行的版本 Zotero Standalone. 它与 FireFox 的结合最方便。

文档编辑

文档的编辑,我以纯文本为主,大部的内容先用 Emacs org-mode 编写整理,然后导出成 UTF-8 编码的 LaTeX 文本,在 Linux 下使用 XeLaTeX 生成 PDF. 在 Windows 下则调用 CTeX 套件中的 XeLaTeX.

其余文档用一下 M$ Office 也就够了。在 Linux 会偶尔使用 OpenOffice, LibreOffice, 以及 KOffice (现在叫 Calligra Suite) 等。尽管 ODT 仍然是国际标准文档格式,但国人以此发布的文档几乎没有,并且大部分用 ODT 格式编辑的文档一般都会提供 PDF 导出。 OpenOffice/LibreOffice 均有 Windows 版本,用得少也就不安装了。日常用 org-mode + XeLaTeX 足够,其余等我参与的团队采用 ODT 格式了再考虑。

本来尝试了一下 WPS, 但发现它开始学习流氓软件的风格,捆绑了一些其它软件,如金山快盘、 FoxIt 等。尽管这些捆绑的软件比较实用,比捆绑 360 要好上很多,但我仍然不喜欢这类风格,况且也用得不多,就卸载了事。

其它

日常会需要绘制一些示意图、流程图、结构图等。在 M$ Office 中自带有绘图功能,复杂一些有朋友喜欢使用 Visio 之类的。我在 Linux 下喜欢使用诸如 yEd 等工具,因是 Java 程序,在 Windows 下同样可用。

头脑风暴与概念整理类的工具,有 FreeMind, Xmind 等,这类程序均是跨平台的,在 Windows 下没问题。特殊一些的,如画费曼图的工具 JaxoDraw, 文献管理 JabRef 等都是 Java 程序, Windows 下自然没问题。

还有一些 GTD 类的工具,由于我使用 org-mode, 不好推荐其它的哪些比较好。

实用程序 (POSIX)

实用程序指的是文件管理、文本自动化处理、数据分析等。我在 Linux 下主要用的是 POSIX 及 GNU 的那一套工具,包括 sed/awk, grep, find, diff, rsync, git, zsh, python 等。这些曾是我在 Windows 下最大的问题,但现在也没了。我有两套环境:

其实有 cygwin 一套就够了。但 msys (基于 MingGW) 虽然不及 cygwin 完整,但与 Win7 的结合相对紧密些,因此保留了 msysgit 自带的那套。另外下载了 mintty 的 msys 版本 (在 cygwin 1.7 中已经自带了 mintty)。

我用 rsync 在不同机器之间同步目录。但与 Linux 系统之间用 rsync 有个问题,就是使用参数 -avh 时文件权限有时会混乱,这是因为 Windows 不支持 Unix 格式的 rwx 权限形式,并且会将 Linux 下 user:group 的属主替换混乱。暂时没有找到完美的解决方案。

经常传递文件,尤其是一些较大的,会担心文件是否完整,中间是否被其他人篡改过。可用校验码来检验文件的完整性,通常用 MD5 或 SHA1 (偶尔有 SHA256, SHA512 等)。这个可使用 cygwin/msys 下提供的 md5sum, sha1sum 等。后又发现,其实 Windows 下也有一些较好的 checksum 工具,比如:

可通过文件签名来检验它是否被篡改过,这个可以通过 GnuPG 工具来实现。相关的思想请参照 GNU Privacy Handbook. GnuPG 的 Windows 版本可参照:

老版本的 Firefox 3 下有一个 GnuPG 的插件 FireGPG, 我以前喜欢在网页 Gmail 中用它来给邮件签名。遗憾的是,它的开发停止了,有人想接手吗?

顺便提一下电子邮件的数字签名问题。在 Windows 下,我的配套工具是:ThunderBird + Enigmail + Gpg4win. 我的密钥指纹:

                        404E 530C E165 882A 6890  DC5D E10F B984 57D7 5560

                    

程序开发

我在工作中涉及到的以及个人兴趣所在的程序开发环境,在 Linux 下很舒服,但在 Windows 下还需要一点点磨合。简述如下:

  • C/C++: 使用 Visual Studio C++ 2010 Express, 可免费从微软下载。另外, cygwin 与 msys 也自带了 GCC 的编译环境,可一并使用。我没时间尝试 LLVM + clang.
  • Fortran: 我基本不用,但头疼的是一些来自其他人的代码。单位里一部分人基本上只会 Fortran, 并且他们编写的代码只能够在 Compaq Visual Fortran (CVF) 上编译运行。对于一些不得不用的代码,我的办法是在 VirtualBox 下运行 Windows XP + CVF. 对于一些相对标准一些的代码,则使用 g95 或者 gfortran (cygwin) 来编译。
  • Python: 由于涉及到一点科学计算,我使用的是 Python(x,y) 套件。比较讨厌的是,我要用到 ROOT (CERN), 它默认提供的 Windows 版本只支持 Python 2.6, 又懒得自己编译,就多安装了一个老版本的 ActivePython 2.6 与之配合。
  • Java: 直接安装 Orcale JDK.
  • Lua: 当然是推荐 LuaForWindows 了。

网络应用

网络应用中最主要的当然是浏览器。由于使用的是 64-位系统,推荐一个专门为 64-位 Windows 编译的 FireFox – 水狐 (WaterFox, 注意,没有中文版本,我也没有找到支持的中文语言包。还有,在 Debian 下有一个净化的 Firefox 叫冰鼬 – Iceweasel, 都与火相对立哦,呵呵). 其它的浏览器请直接从官方网站下载:

另外,请注意, 不要信任任何国内的下载网站! 其实,为了确保你下载的文件是原始的版本,最好每个重要的文件都附加一个签名验证。遗憾的是相关的工具对普通用户稍显麻烦,大家还没有养成数字校验的习惯,会用一下 MD5 校验完整性就很不错了。

网络浏览器再配合一些扩展插件,会让你的网上冲浪很舒服。推荐一些 FireFox 插件:

  • Adblock Plus – 屏蔽广告,尤其是那些讨厌的 Flash!
  • NoScript – 屏蔽一些网站的 JavaScript 脚本 (建议有经验的人使用), 免遭恶意脚本的骚扰。
  • Zotero – 网文保存与管理的好助手。
  • Greasemonkey – 一个用户脚本管理程序。你可以从 http://userscripts.org/ 下载一些常用脚本,比如去除 Google 搜索的重定向功能,这样可以避免因 Google 临时被墙而导致链接打不开的命运。这个使用稍显复杂,建议有经验的人用。

即时通讯类,一般通过网页,偶尔用一下 Skype. 在 Linux 下偶尔会用一下 Pidgin. 我基本不用 QQ, 但姐姐、外甥女等会用,他们有时需要与母亲视频通话而又不会用其它的工具,所以我就只安装了一个 QQ 视频插件,偶尔通过 WebQQ 启用一下。

除了 wget 及 curl, 我几乎不用任何专门的图形化下载工具,因为没必要。那个国产的迅雷怎么看怎么别扭,真想不明白为什么还会有人交钱当会员。那些只提供迅雷链接的网站,一般也没有我要的有价值的资料,这类在我潜意识里会自动判定为垃圾网站。

对于 BitTorrent, 在 Linux 使用 transmission, 在 Windows 下则使用 BitTorrent。

对于 ed2k 类资源,则使用 aMule. 在 Linux 下还有 amule-dlp, 这个暂时没有 Windows 下编译好的版本。

娱乐游戏

一些我喜欢的小游戏,比如 Hex-a-hop 等,也有人编译了 Windows 版本。这类东西比较杂,不多说了。当然,有一大类游戏只能在 Windows 下运行的,从 Linux 过来的就可以抛开原来的 WINE 之类工具了。

科学计算

我习惯使用一些 Python 工具,比如 iPython, numpy, scipy 等。这些在 Windows 下可以从 Python(x,y) 套件中找到:

Mathematica 是一个强大的工具,但授权费用太贵,我也不熟悉其编程,但喜欢读一些由 Mathematica 生成的文档。它的文档阅读器是免费的,参见 Wolfram CDF Player.

Maxima 是一个开源的数学平台,它的历史很悠久,也有 Windows 版本。

有些朋友喜欢 OriginLab, 与此类似的程序只有 Windows 版本的,不必多说。

其它杂类

有的是专门针对 Linux 开发的专业程序,这个用虚拟机 VirtualBox 就解决了。并且,我在 VBox 下设置了多个虚拟机,每个保留着不同的 Linux 开发环境,如 Debian, Scientific Linux CERN, NixOS 等。两样,一些老旧的 DOS 及 Windows XP 及以下的程序,还是虚拟机方式解决。

系统管理等

Linux 有一套我习惯的工具,如 htop/iotop/atop/iftop, tmux, pstree, ip, gpg, apt, gpart 等。在 Windows 下则需要适应另一套东西,这也是最痛苦的。并且在 Windows 多了一些额外的管理工作,如磁盘整理、杀毒、系统清理,这三项非常讨厌!不抱怨了,简介一下我的日常管理工具。

Windows 下额外的工作我选用的是 Piriform 开发的一套工具:

  • CCleaner – 清除磁盘垃圾文件,清除注册链表垃圾等。
  • Defraggler – 磁盘整理工具,我用它替换了系统自带。
  • Recuva – 文件修复,找回你误删除的文件。 (在 Linux 我使用 testdisk, 等一下,好象它也支持 Windows!)
  • Speccy – 系统信息监视,提供主板温度等指示。

还有,微软也提供了一套实用的工具套件 SystemInternals. 这套工具是免费的,它原来是一家小公司开发的,后来被微软件收购了。到它的网站 (只有英文的) 上看看吧,有很多有意思的小工具,很实用的,比如:

  • Disk2vhd – 把物理硬盘转换成虚拟机磁盘,转换后的文件可用于 VirtualBox, VMware, Virtual PC 等。有一些老旧的机器,其实最主要的是它的硬盘数据。你可以用这样工具把老机器复制成虚拟机。
  • SDelete – 安全删除文件并将标识为空余的硬盘空间完全清零,可避免 Recuva 之类的工具将删除后的文件再恢复。这对删除关键数据很重要哟,如陈老师照片之类!
  • Process Explorer – 可查找进程及打开的文件等详细信息,如果想监视 360 之类流氓软件在运行时的动作,这就很有用。

在 Linux 下我使用 ClamAV 杀毒。在 Windows 下同样可用。另一个替代就是微软自己开发的 Microsoft Security Essentials (MSE), 可从微软的官方网站上下载安装。

结语

在 Windows 7 下工作是没有任何问题的。只是,在 Linux 下,我喜爱的窗口管理环境是 Awesome WM, 在 Win7 下这个就无法切换了。我主要使用计算机的习惯还是在命令终端下。 Win7 下可由 zsh (cygwin) 完成很多工作。但有时还是需要使用 CMD.exe, 最近发现一个工具 Take Command (其中 TCC/LE 是免费的), 让交互式命令与处理脚本变得更便利些。

先这样在 Windows 7 下工作一段时间。等有空再找找 Dell N4110 在 Linux 发热量大、双显卡切换麻烦的解决办法,如果解决了这个问题,再切换回我喜爱的 Linux. 不过,如果想测试一些自行开发的代码在 Windows 下的表现,保留一个 Windows 系统也不错。毕竟大部分人仍然用的是这个。

88x31.png

版权所有 ©2012-2018: 心蛛 | 日期: 2013-01-11 五 19:51

Generated by Emacs 25.3.1 (Org mode 9.1.7), Validate