「Happy Hacker Weekend!」Dictionary on DNS

2012-05-05 23:24:49 +08:00
 chuangbo
Happy Hacker Weekend~

这个周末帮 @frannk 的「滚去背单词 http://jianbing.org 」做了一个查字典的工具,在 shell 下使用,通过网络查询,方便喜欢英文的 Linux/Mac Hackers 使用。

使用 DNS 查单词优点是速度快,并且无须客户端,随时可以查哦~

使用方法

1. 在 ~/.bashrc 的末尾添加下面两行
# jianbing.org on DNS
function j() { dig $1.jianbing.org txt +short | perl -pe's/\\(\d{1,3})/chr $1/eg; s/"//g' }

2. 重新打开你的 shell 或者 $ . ~/.bashrc

3. Enjoy jianbing on DNS
$ j apple
['æpl] n. 苹果, 似苹果的果实
10254 次点击
所在节点    分享创造
45 条回复
Frannk
2012-05-05 23:27:33 +08:00
哈哈 谢谢 太帅了
chuangbo
2012-05-05 23:50:16 +08:00
修正一下,function 那里漏了一个分号,因为我是 zsh,这样写也是对的,在 bash 下就出错了……


1. 在 ~/.bashrc 的末尾添加下面两行
# jianbing.org on DNS
function j() { dig $1.jianbing.org txt +short | perl -pe's/\\(\d{1,3})/chr $1/eg; s/"//g'; }
zewenzhang
2012-05-05 23:52:54 +08:00
帅,以后linux查单词方便了许多!
notsobad
2012-05-06 00:00:00 +08:00
wangxh@mac : ~$ j pear
[pєә] n. 梨子, 梨树
wangxh@mac : ~$ j apple
\\[\\e[01\;32\;41m\\]6656
wynemo
2012-05-06 00:11:02 +08:00
不错

dig leverage.jianbing.org txt +short|perl -pe's/\\(\d{1,3})/chr $1/eg; s/"//g';
['li:vәridʒ] n. 杠杆作用

dig denominator.jianbing.org txt +short|perl -pe's/\\(\d{1,3})/chr $1/eg; s/"//g';
[di'nɔmineitә] n. [数] 分母, 命名者

不过查稍微生僻的词好像有些不给力阿
Frannk
2012-05-06 00:15:21 +08:00
单词词条 会在后期加强的
imsihaizi
2012-05-06 00:25:21 +08:00
@frank的教导,哈哈。

j fat
[fæt] n. 脂肪, 肥肉 adj. 肥大的, 丰满的, 肥的, 胖的, 油腻的 n. 文件分配表 vt. 养肥, 在...中加入脂肪 vi. 长肥
chuangbo
2012-05-06 02:11:38 +08:00
修复了几个文本转义的 Bug,并再次更新了 perl 脚本

1.在 ~/.bashrc 的末尾添加下面几行

# jianbing.org on DNS
function j {
dig $1.jianbing.org +short txt | perl -pe's/\\(\d{1,3})/chr $1/eg; s/(^"|"$)//g'
}
Livid
2012-05-06 02:16:40 +08:00
现在 j apple 依然在返回乱码?
loddit
2012-05-06 02:23:03 +08:00
安装了autojump(https://github.com/joelthelion/autojump)
所以'j'命令被占了,我改成用'd'喽
0cean
2012-05-06 04:48:38 +08:00
; <<>> DiG 9.9.0 <<>> ocean.jianbing.org txt +short
;; global options: +cmd
;; connection timed out; no servers could be reached

服务器解析出问题了。
chuangbo
2012-05-06 09:26:50 +08:00
@Livid 很奇怪,如果是从 apple.wuliaotu.net 查询就是 OK 的。

@Ocean 是一直不行吗?你本机用的 DNS 是什么?可以从 http://ip.dnspod.cn 查询到
Frannk
2012-05-06 10:08:43 +08:00
@notsobad @chuangbo @Livid sorry,我得汗一个。是当时我测试DNSPOD是否支持中文TXT记录的时候,加了一个apple的记录。
Frannk
2012-05-06 10:09:18 +08:00
修复了
chuangbo
2012-05-06 12:20:14 +08:00
又更新了一下脚本,目前支持 词组、大小写区分,比如
$ j frank
[fræŋk]
adj.
坦白的, 率直的, 老实的
vt.
免费邮寄
n.
免费邮寄特权

$ j Frank
[fræŋk]
n.
弗兰克(男子名)

$ j a little
少量, 少许

function j {
dig "$*.jianbing.org" +short txt | perl -pe's/\\(\d{1,3})/chr $1/eg; s/(^"|"$)//g'
}

理论上还支持 中文->英文 或者任何语言到任何语言,只要有词库。
zieglar
2012-05-06 14:12:15 +08:00
新脚本搜Frank和frank都只能搜到人名,无法搜到My
Frannk
2012-05-06 14:22:52 +08:00
我靠 真是墨菲定律啊 我也发现apple和my 有错误 结果都在评论里出现了
Frannk
2012-05-06 14:26:42 +08:00
@chuangbo @zieglar 是递归给缓存了,递归不识别大小写;
0cean
2012-05-06 16:23:33 +08:00
@chuangbo 一直都不能查询,我本机的DNS用的是ISP商提供的 202.101.224.70 电信 中国 江西 上饶
fly2never
2012-05-06 16:42:57 +08:00
micro也搜不到,期待词库更新

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/34780

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX