shell-在线翻译脚本

        在linux过程中难免会碰到陌生的单词,此时不得不打开翻译软件或网页请求翻译,但这样切换界面比较麻烦,也浪费时间;

        今天头脑发热,尝试着在网上找命令行翻译工具,但无果;无意中,某python在论坛中看到有网友用python调用”有道翻译API”接口的翻译脚本,但该笔者的python脚本写的非常复杂,故萌生了自己写shell脚本的念头;经过1小时,写出了下面简陋但能凑合着用的命令行在线翻译脚本;

大概思路如下:

1、拥有道翻译API接口【申请翻译API传送门】

2、通过get方式请求翻译【注:只能通过get方式请求】;

3、过滤翻译结果;

代码如下:

shell-在线翻译脚本

#!/bin/bash
#Verson:2.8
#Auther:Jev Tse #Pragram:This is a chinese-english translation scripts.
    TMP=$(mktemp /tmp/tmp.XXXXXXXX)     URL='http://fanyi.youdao.com/openapi.do?keyfrom=<keyfrom>&key=<key>&type=data&doctype=<doctype>&version=1.1&q='     wget -q  -O $TMP  "$URL$*"     if  cat $TMP | grep  '\<ex\>' &>/dev/null  ;then         cat $TMP | grep -Po '(?<=\<ex\>\<\!\[CDATA).*(?=\]\>)'   | head -1     else         cat $TMP | grep -Po '(?<=\<paragraph\>\<\!\[CDATA).*(?=\]\>)' | head -1     fi     rm $TMP     unset TMP URL 

注:

<keyfrom>    即申请时的应用名称

<key>        申请得到的API key

<doctype>    请求类型:xml

如<keyfrom>为linux,<key>为88888888,则url为:

url='http://fanyi.youdao.com/openapi.do?keyfrom=linux&key=88888888&type=data&doctype=xml&version=1.1&q='

将该脚本保存在/usr/bin/下,即可;『也可以通过修改PATH环境变量』

下面是简单测试效果:

shell-在线翻译脚本

原创文章,作者:Jev Tse,如若转载,请注明出处:http://www.178linux.com/69418

(10)
Jev TseJev Tse
上一篇 2017-02-19 03:25
下一篇 2017-02-19 11:50

相关推荐

  • 第三周作业

      1. who |cut -d ” ” -f1|uniq 2.who |head -1 3.cat /etc/passwd | cut -d: -f7|uniq -c |sort -n|tail -1|grep -o “/[[:alnum:]].*” 4. cat /etc/passwd |sort…

    2017-12-16
  • 用户管理+文本处理+文件查找

    用户管理 erter useradd (使用频率2) /etc/default/useradd用户模板文件说明 /etc/login.defs 关于新建用户的默认配置文件 批量创建用户和修改密码 usermod 修改用户的属性 chpasswd修改密码 2.chage option user 3.finger user 查看用户信息 4.chfn user …

    Linux干货 2017-04-09
  • Linux之bash shell脚本编程入门篇(二)以及文件查找和压缩的使用

    bash shell脚本编程入门篇(二) read命令的使用 作用:     使用read来把输入值分配给一个或多个shell变量:         -p指定要显示的提示      &nbs…

    Linux干货 2016-08-18
  • ☞LAMP

    LAMP lamp环境简介 php –> httpd Module形式安装php FastCGI方式安装php httpd-2.2配置fcgi php-xcache MySQL 安装与配置 php –> MySQL 快速部署LAMP php网站程序安装 phpMyadmin wordpress DiscuzX 脚本安装wordpress、disc…

    Linux干货 2016-10-12
  • VRRP协议

    VRRP协议 Virtual Router Redundancy Protocol 虚拟路由器冗余协议。 Vrrp协议在linux上的实现(软件实现)是keepalived。 VRRP简单的讲,就是心跳信息。 主节点不断的向备用节点广播信息,信息包含自己的心跳和优先级。 不光如此,还可以在主节点上安装一个监控,来监控其他资源,如果这些资源运行正常,就可以给其…

    2016-11-02
  • LVM work!!!

    1、创建一个至少有两个PV组成的大小为20G的名为testvg的VG;要求PE大小为16MB, 而后在卷组中创建大小为5G的逻辑卷testlv;挂载至/users目录.     (1)查看分区大小 [root@localhost ~]# lsblk NAME   MAJ…

    Linux干货 2016-09-01