一切为了太阳系的荣耀--Xshell的Solarized配色

Xshell 是 Windows 里面为数不多的免费且好用的 SSH 客户端,不过默认的配色实在是太难看了,真的是太难看了,如果不改掉实在是不能用。而且和 Sublime Text、TextMate、Emacs、VIM 等编辑神器以及 iTerm2 等深受好评的软件不一样,网上现成的 XShell 配色也着实少的可怜。冇办法,只好自己动手了。

上面提到的编辑器,真的有很多经典的配色,如 Monokai、Dawn、Eiffel、Tommorow、Twilight 等,但是我最爱的,还是那经典的 Solarized。关于 Solarized,已经有很多 介绍 ,其官网在 这里 ,Github 的主页在 这里,上面有为很多软件如 Emacs、Gedit、iTerm2、Putty、VIM、TextWrangler 等写好的配色文件,可自行采撷。

最爱的 Solarized Dark 配色,写成 Xshell 能用的形式如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[Solarized Dark]
text(bold)=839496
magenta(bold)=6c71c4
text=839496
white(bold)=fdf6e3
green=859900
red(bold)=cb4b16
green(bold)=586e75
black(bold)=073642
red=dc322f
blue=268bd2
black=002b36
blue(bold)=839496
yellow(bold)=657b83
cyan(bold)=93a1a1
yellow=b58900
magenta=dd3682
background=042028
white=eee8d5
cyan=2aa198
[Names]
count=1
name0=Solarized Dark

只需把以上内容拷贝到 SolarizedDark.xcs,并在 Xshell 中导入这个配色文件,就可以享受程序猿专用的温暖的太阳系之光了。

效果如图

以下为更加温暖的亮色系配色文件,同理保存为 SolarizedLight.xcs 并导入 Xshell 即可。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
[Solarized Light]
text(bold)=657b83
magenta(bold)=6c71c4
text=657b83
white(bold)=002b36
green=859900
red(bold)=cb4b16
green(bold)=93a1a1
black(bold)=eee8d5
red=dc322f
blue=268bd2
black=fdf6e3
blue(bold)=657b83
yellow(bold)=839496
cyan(bold)=586e75
yellow=b58900
magenta=dd3682
background=fdf6e3
white=073642
cyan=2aa198
[Names]
count=1
name0=Solarized Light

效果如图

ps: 后来仔细看了一下,已经有人 fork 了一个 Solarized 的代码库,并提交了 for Xshell 的 pull。参见
[这里](https://github.com/mayjabber/solarized/tree/master/xshell-colors-solarized) https://github.com/mayjabber/solarized/tree/master/xshell-colors-solarized

轻松并发执行作业--GNU Parallel

有的时候要执行一些很快但是却很多重复的操作,例如修改所有普通文件的权限,修改一下权限本是很快的操作,但是文件很多的话操作起来就慢了。再比如要下载很多 http 下很小的文件,下载一个文件如果只需要三秒,但是每一个文件从建立连接、进行对话然后开始下载直到下载完成,中间会浪费很多时间,可能浪费的比实际下载所需的时间还多。

因此,如果能有一个方法并发进行,那么效率会高得多。以前在 Shell 里面也有一些 tricks 来进行这方面的操作,但是总是因为繁琐而容易出错。

现在 FSF 开发的 GNU parallel 一出,问题迎刃而解。例如修改所有子目录下面普通文件的权限:

1
find ./ -type f | parallel -m chmod mode

批量修改文件夹权限

1
find ./ -type d | parallel -m chmod mode

再如有一个顺序任务的脚本 batch.sh

1
2
3
4
5
6
wget url1
wget url2
wget url3
wget url4
wget url5
wget url6

那么你就可以并行运行如下:

1
2
3
4
parallel -j+0 < batch.txt
## This runs as many instance of the commands in batch.txt
## in parallel as you have cores (-j+0) and schedules the
## jobs in an efficient manner

当然,你也可以直接 使用一个 parallel 脚本(shebang)

1
2
#!/usr/bin/parallel
blahblah

要安装它很简单,比如:

  • Ubuntu: sudo apt-get install parallel
  • Fedora: yum install parallel
  • Mac OSX: brew install parallel
  • Others: 源码编译(下载, tar xjvf parallel....tar.bz2; ./configure; make install)

    至于详细功能,那就需要: man parallel

RSYNC 同步数据

rsync 是同步、备份数据时的强大工具。

1
rsync -avz --password-file=rsync.ps user@192.168.0.206:/backup/dir /home/destdir

其中注意 -a 意味着 archive,即保留各种权限等,-v 表示 verbose, -z 则是压缩传输。 —password-file 要注意权限,以防被别人窥探,当然如果不是在脚本里面批量使用,就不需要这个选项了,直接交互输入密码更为安全。

一般在传输文本文件的时候加上 -z 选项,速度会快很多,但如果是二进制数据等,一般还是不要加的好。

Mac OS X 启用root用户

虽然一般情况下 Mac 下面不需要 root 权限的,配合 sudo 基本可以走天下,但是也避免不了一些奇葩的然则又必须使用的软件需要 root 用户才行,比如有的网页 VPN 必须绑定 22 号端口!(真奇葩!!),那么使用如下步骤可以启用 root 账户。

  1. 从 Apple 菜单中选取系统偏好设置…。
  2. 从显示菜单中选取用户与群组。
  3. 点按锁图标并使用管理员帐户进行鉴定。
  4. 点按“登录选项…”。
  5. 点按右下部的“编辑…”或“加入…”按钮。
  6. 点按“打开目录实用工具…”按钮。
  7. 点按“目录实用工具”窗口中的锁图标。
  8. 输入管理员帐户名称和密码,然后点按“好”。
  9. 从编辑菜单中选取启用 Root 用户。
  10. 在“密码”和“验证”字段中输入您想要使用的 root 密码,然后点按“好”。

OK, 搞定!

Octopress Solarized Light 替换 Dark

Octopress 中默认的代码高亮是程序猿喜闻乐见的 Solarized,不过很遗憾的是默认是 Solarized Dark,像我等心里黑暗的非主流 Coding 技术人员生活已经很暗无天日了,因此还是希望生活中能多一点阳光的,Solarized Light 就很好。幸运的是,Octopress 其实也带了 Solarized Light 配色的,只要简单的修改一行配置就行了:

1
2
3
in : sass/base/_solarized.scss
from : $solarized: dark !default;
to : $solarized: light !default;

Bazinga!

OSX Mavericks 输入特殊字符

调用字符显示程序

在 Mavericks 之前的 OSX 中,输入特殊字符可以使用 ⌘+⌥+T,调用字符显示程序,但在最新的 Mavericks 中,快捷键变为了 ^+⌘+Space

注音字母

在英文输入状态下,按住键盘上的某些字母键可以实现给该字母添加注音或者是临时输入一些带注音符号语言的功能,如长按 E 会弹出选择”E È É Ê Ë “ 等字符的选项。

使用软键盘

在输入法图标上选择“选择键盘显示程序”,会出来一个软键盘,按住 Option 键,可以选择输入一些特殊字符。

使用快捷键

1
2
3
4
= ⌥+⇧+K
· = ⌥+⇧+9
‰ = ⌥+⇧+r
€ = ⌥+⇧+2 等

通过“符号和文本替换”

预先在“系统偏好设置”,点击“语言与文本→文本→列表下方的加号按钮”,然后在“替换”框中输入要替换的文本,比如 cmd,在“使用”框中输入替换为的文本或符号,比如⌘,此时当你在文本中输入 cmd 的时候即可自动将 cmd 替换为⌘,而不需要做其他事情。当然,你也可以添加更多的符号替换,比如输入 apple 自动替换为,将 opt 自动替换为⌥等等。