已经在很多工具类文章前言中,提及使用工具的重要性;以至于在写这篇时候,大为窘迫:穷尽了脑海中那些名句箴言,目测都已然在先前文章中被引用。鉴于杳让人心底意识到工具的重要性,并且能践行之,远比介绍如何使用重要的多,所以,开篇之前,还是得再次重申:工欲善其事,必先利其器。如能领悟,善莫大焉;然而根据长期观察,这个现状并不容乐观,所以就有了这篇文章的存在;毕竟晚晴幽草轩有部分职责,就是作为经世致用的布道者般的存在。

如觉这里排版不怎么称心,请移步这里,如何更好地运用 Chrome (Google)

微注: 写博,本就不是易事,非朝夕可至,尤其这种整理总结性文章;故此,这里将采取阶段性更新手法,一来防止了拖延之;二来,也能不断学习提炼,减少内容的错误误导,三来,也是防止些许聚合网恶意抓取的尝试。(Update @2017-05-16)

科学上网篇

使用浏览器,懂得如何去科学上网,这一点再重要不过了(个别浏览器除外,有些浏览器的存在,就只是用来下载其他浏览器的,大家都懂得)。这其中,首当其冲的就是选择合适搜索引擎。在国内,倒是有那么几家可选,譬如百度,360,搜狗,Bing等等,搜索写娱乐八卦什么的,倒也无妨。但是,要搜索些专业性、原味性的干货,你当知道,此时该选择谷歌(Google),这就跟饿了知道该吃饭一般;然而,这在我国大陆,多半只存在于的程序员之间。然后就是如何能使用谷歌(Google)了——须FQ,你知道在国内,无法直接使用 Google 搜索(略大型点的科技公司除外)。

谈起这FQ,可供选择的办法就很多了。愿意花钱的话,购买个靠谱的 VPN 即可。需要流量不是很多,则可以选择像 lantern (蓝灯)这样产品,据悉每天可有几百兆可供使用。不怕麻烦的话,大可到网上搜索,时常会有些好心人,贡献出些 Shadowsocks 免费服务,只不过,这好比像是在打游击,时间长了既累也烦。倒不如,自己动手,丰衣足食。稍微一折腾,即可自己搭建一套 VPS ,来达到科学上网的目的,这里推荐使用 Shadowsocks,对于它的使用,在Shadowsocks 使用说明,已经写明,为确保文章完整性,特此补充一份心得:

搭建 Shadowsocks 服务器

首先需要一台服务器(这得是国外的),推荐使用 DigitalOcean;注册,完成 SSH 配置(具体操作可参考 如何设置添加SSH),直接用 root 用户登录即可:

ssh root@your_server_ip

  • 安装 Shadowsocks 服务端

运行以下命令即可快速安装(For Debian / Ubuntu System):

apt-get install python-pip
pip install shadowsocks
apt-get install ssserver

  • 配置 Shadowsocks 服务端
    安装好 Shadowsocks 以后,可以通过以下指令,来启动 Shadowsocks 服务:
ssserver -p 8836 -k yourPassword -m rc4-md5

以上这种法子,诸多不便,推荐使用配置文件来操纵;新建配置文件,运行命令 vim /etc/shadowsocks.json

{
  "server":"your_server_ip",
  "server_port":8388,
  "password":"yourpassword",
  "timeout":300,
  "method":"aes-256-cfb",
  "fast_open":false,
  "workers": 1
}

server:服务器 IP地址 (IPv4/IPv6)
server_port:服务器监听的端口,一般设为80,443等,注意不要设为使用中的端口
password:设置密码,自定义
timeout:超时时间(单位:秒)
method:加密方法,可选择 “aes-256-cfb”, “rc4-md5”等等。推荐使用 “rc4-md5”
fast_open:true 或 false。如果你的服务器 Linux 内核在3.7+,可以开启 fast_open 以降低延迟。
workers:workers数量,默认为 1。

备注:亦配置多个 Shadowsocks 账户,具体可以参考如下的代码配置:

{
  "server":"your_server_ip",
  "port_password":{
    "8001":"pass01",
    "8002":"pass02",
    "8003":"pass03",
    "8004":"pass04"
  },
  "timeout":60,
  "method":"rc4-md5",
  "fast_open":false,
  "workers":1
}

接下来,你就可以使用下面这个指令启动服务咯,是不是很简单?

ssserver -c /etc/shadowsocks.json
  • 下载 Shadowsocks 客户端并填入
    这里没什么好介绍的,Shadowsocks 的客户端支持各大主流平台,而且客户端的配置相当简单;下载之,填入需要对应的: 服务器IP,端口,密码,加密方式,即可;至此就可以在浩瀚无垠的网上浪起来了。Shadowsocks 客户端下载地址传送门:OS XWindowsAndroidIOS

【做个补充】:运用命令 ssserver -c /etc/shadowsocks.json 来开启服务,很不方便,一旦退出服务器,下次就得再次开启。于此,Shadowsocks 也提供了后台运行的命令:

ssserver -c /etc/shadowsocks.json -d start
ssserver -c /etc/shadowsocks.json -d stop

然而在真正实施上,却会遭遇报错:option -d not recognized,根据 Issues 给出的回答,唯有升级版本才能解决该问题。而事实上,shadowsocks 开源库,已经根据规定被移除(Removed according to regulations)。折腾再三,幸而找见了更好的衍生产品: shadowsocks-libev —— 一个纯 C 实现,并且对于数千个连接而言具有非常小的占用空间(几兆字节),用于嵌入式设备和低端盒的轻量级的安全 SOCKS5 代理;值得推荐使用。对于安装和配置也都挺方便,如果你是 Ubuntu 14.04 and 16.04 使用者的话:

// install from PPA
sudo add-apt-repository ppa:max-c-lv/shadowsocks-libev
sudo apt-get update
sudo apt install shadowsocks-libev

// Build deb package from source
mkdir -p ~/build-area/
cp ./scripts/build_deb.sh ~/build-area/
cd ~/build-area
./build_deb.sh

// Configure and start the service(配置,同上文所讲)
# Edit the configuration file
sudo vim /etc/shadowsocks-libev/config.json

# Start the service
sudo /etc/init.d/shadowsocks-libev start    # for sysvinit, or
sudo systemctl start shadowsocks-libev      # for systemd

如此,简单的一次操作之后,就能长久的欢乐嗨皮了;更多系统的安装配置方法,请自行参见 shadowsocks-libev。还需要提及的是,使用这个库,也有些弊端性,就是不能方便的支持多端口,可以参见issues/#5;可以有的办法是,启用多个配置来曲线达成所愿,操作方法如下:

ss-server -c config1.json -f pid1
ss-server -c config2.json -f pid2
ss-server -c config3.json -f pid3

如此即可;也可通过运行 netstat -tlnp 命令,查看 ss-server 是否监听了多个配置文件的端口。如果略嫌这样操作麻烦的话,也可以用 Shadowsocks 的 Go 版本 —— shadowsocks-go,它更为方便的支持多端口的设置(update@2017-05-15)。


有个广告: 突入一则利人利己的广告:服务器推荐使用 DigitalOcean, 它简单灵活、价格公道(最低 5$/月),童叟无欺,可免费试用 30天。堪称业界良心。此处广告的缘由在于,你若有意使用它,不妨用我的专属推荐链接 DigitalOcean For JeffJade,注册即可获得 10 美刀,当花费了 25 美刀,我就可获取 25 美刀;如有意向,不妨一试;用上一年,算下来每天也不到一元。欲查看更多广告,请点击我


搜索技巧篇

精确搜索

精确搜索,就是搜索的关键字用“”(双引号,中英文皆可)包含。也叫完整搜索,表示查询词不能被拆分,在搜索结果中必须完整出现。举例说明:

“胜天半子,其又奈何”
胜天半子,其又奈何

前者搜索出来的内容,就是必须包含指定关键字;如果没有查询到任何内容,Google 会在下方给出不包含引号的结果。后者,搜索的内容,是关键词以一定规则被拆分的结果。

模糊搜索

星号(*) 是常用的通配符,也可以用在搜索中,实现模糊匹配搜索。比如在 Google 中搜索:"搜索*擎",精确模糊,搭配使用,效果更显著。其中的 * 号代表任何文字。返回的结果就不仅包含“搜索引擎”,还包含了“搜索收擎”,“搜索巨擎”等内容。

站内搜索

顾名思义,就是我们可以指定仅在某个站点下搜索,这很有用,可以加快定位出你想要的内容;而且也可以用它来替代些许论坛 or 博客自带的站内搜索。譬如,我自己就常这样使用:

site:jeffjade.com 数组
site:ruanyifeng.com npm

排除搜索

如果你想更精确你的搜索,此法大有可为;在想搜索结果中不包含某个词,就在该词的前面加一个 -(减号,⚠️这个得是半角英文,并和之后的词得连着,不能有空格)。表示所有搜索结果不包含减号后面的词,含有它的网页将被过滤掉。举例说明,ListView 控件在 Android 跟 React Native 都会含有,如果你想要更精确你的结果,即可屏蔽掉另一方,相这样:

ListView -Android
ListView -ReactNative // (这 React Native 得连起来,否则会被拆分)

标题中搜索

这标题中搜索,即在查询的关键字前面加上 intitle: (冒号得是半角英文,且与关键词间不能有空格), 表示搜索结果的标题都必须含有 intitle: 后的查询关键词,以帮助排除无关网页。

intitle:静晴轩
intitle:天意人间舫

这里可以补充说明的是:还可以加 allintitle:;如此搜索,返回的内容是,页面标题中包含多组关键词的页面。例如:allintitle:SEO 搜索引擎优化,就相当于:intitle:SEO intitle:搜索引擎优化,返回的是标题中既包含“SEO”,也包含“搜索引擎优化”的页面。

文件类型

在搜索的时候,是可以指定文件格式的,指定格式用:filetype ,表示搜索特定的文件格式;如此一来,我们搜索出来的内容,就是指定格式文件(eg:PDF)。看姑姑(Google)是不是很贴心?

代码大全 filetype:PDF
Clean Code filetype:PDF

以上,只是 Google 搜索技巧中常用的几个,其他还有很多,比如:inurlinanchorallinurl诸次等等,更多玩法,可以参考知乎 如何用好谷歌等搜索引擎?;熟练运用,灵活搭配,从而大幅度提升工作效率,并更好地解决问题。此处需要补充的是,以上诸法,并非都适用于百度;即使支持,因为其自身缘由(比如收录不及时),并不能很好的起到应有的效用。

插件扩展篇

当你发现,有人使用 Chrome,而插件扩展栏目,竟空空如也,你就知道:Ta 的业余是专业的,尤其是开发者。Chrome,以及很多主流工具,比如手机,Mac,编辑器等等,都是基于按需索取的理念,这才是一种更合理的存在。将更多功能,以插件、扩展的形式按需注入,不仅更合理地满足所有人所需,也给出了更多选择余地的同时,还能让软件本身更加轻盈体瘦。这一点需要讲明的是,如果说“小白”执意甘为小白,那么这里未有苦劝之义务。关于这部分,早先有在 Awesome Chrome 插件集锦一文中做过记载,并持续更新,此不赘述。

这里还需郑重声明的是:欲要优雅地使用 Chrome,首先也得注册谷歌账号,并保持登录。登录使你所有的东西(书签,应用,扩展,浏览记录等),都可以保存到云端,如此在不同的环境(如家 or 公司)下可以方便的同步。试想,重装系统,或者换台电脑之后,如果要逐个去找之前装的扩展,保存的书签,这样的事情,怎能称不上优雅?不是么?

快捷操作篇

天下武功,唯快不破。掌握了搜索技巧,用对了合适插件,此为策略方法层面的事儿。这好比是在玩儿竞技游戏,能犀利而灵动的操作,也是取胜的关键。何况,在你的阵地上(Eg:电脑,浏览器,Terminal等),手随脑动,运指如飞,是一件多么酷的存在。而这,只需划分一点点时间,了解之熟悉之,享受快捷中寻求进阶,假以时日,便可心指合一,臻至化界。

首先,你需要了解其快捷键操作(常用),毕竟键盘操作,远比鼠标要迅捷且准确;这一点,Chrome 做的非常好,在于它跟很多软件操作习惯,是大致相同的(比如 Sublime),一通则百通。这个可以 在 Setting(F1 呼出) 项中的 Shortcuts 中查看。如果不符合固有操作习惯,也可以更改。然,欲穷千里目,则须更上一层楼;如要更为便捷的去操作,则强烈推荐 Vimium(或者 cVim),他们犀利的存在,好如游戏手柄,可以让你在 Chrome 上纵横捭阖;具体可以参见Vimium~让您的Chrome起飞。举例来说,比较常用 r 来刷新,x 来关闭当前,t 来新建标签,gg 回到页首等等;当然,这看起来方便的不是太多,可是有些需求,比如:你想拷贝当前标签页,一般操作可分为: ctrl+l 选中当前网址,然后 ctrl+cctrl+t 新建标签页之后 ctrl+v,最后还需 Enter 一回。如果使用 Vimium呢,只需 yt 即可,更可贵的在于,这还是深度拷贝,可将当前网页不仅是内容,还包括浏览历史,Session 等一并都复制了去,相比之下,真是贴心到了天际。

当你在搜索引擎搜某关键词时,多半会展示有一堆列表,一一点开查看,这样的效率实在是不高;这时候,就可以借助 Linkclump,一款用来批量打开多个网页链接的插件, 她能让你用鼠标框出你想打开的链接,就能在后台自动打开。这样的例子实在数不胜数,只要你足够懒,并积极探索与折腾,总能不断的提升效率,达至极致。

除此外,还可以讲的是,很有必要管理好书签;你应该将其按一定规则,分门别类,放置于不同的书签夹中,以便自己清晰快速的检索。如果能略微记得,书签所存网址的个别单词,又完全可以借助 Vimium 去搜索,快捷键 b(/B),分别是在当前页和新标签页打开,如此,效率的提升又进了一步,善哉。

使用技巧篇

强大如 Chrome,其亿万行代码的背后,存在着你无法想象的强大,如果你了解的越多,你越发深信这一点。倘若,你是一位有经验的开发者,你会明白,Chrome 不仅仅是一个浏览器那么简单。下面一起来学习下,Chrome 有哪些不为所致的技巧:

  • Chrome的隐身模式: 快捷键:Command + Shift + n (window下是 Ctrl + Shift + N)。它的好处在于:保护你的隐私。具体表现为,在此窗口中查看的网页,不会显示在浏览器历史记录,或搜索历史记录中,关闭隐身窗口后,也不会在计算机上留下 Cookie 之类的其他痕迹(但会保留所有下载的文件或创建的书签);明白这一点,浏览些不想让人知道内容,是不是多了许多大胆的自由呢?需要在意的是,事实上隐身模式并非是万能的,该注意的还得谨慎。
  • Chrome的about指令: 作为一个 Chrome 用户,你该懂得 Chrome 地址栏功能,这让你变得更像一个合格的主人。试着在 Chrome 地址栏,输入 chrome://about/,这会展示出:List of Chrome URLs,如下图所示:

仔细研究的话,发现这其中有些十分有意思,也很有价值,一起来看几个:

chrome://apps/ Chrome网上应用商店
chrome://accessibility 查看浏览器当前访问的标签
chrome://appcache-internals/ 对HTML5应用的离线存储进行管理
chrome://cache/ Chrome缓存(只读)
chrome://components/ 查看相关组件
chrome://dns/ 查看DNS记录
chrome://extensions/ 查看扩展程序
chrome://plugins/ 停用启用相关插件
**chrome://omnibox/** 能地址栏(强大啊,你输入“晚晴”试试?)
chrome://predictors/ URl输入命中率(结合 omnibox 使用)
chrome://net-internals Chrome的抓包工具
chrome://quota-internals/ 显示磁盘详细可用空间以及各个网站的使用配额
chrome://thumbnails/ 近期浏览的网站的首页快照(以相册的形式)
view-source: 显示网页的源代码
... ...

  • Tab 搜索: 支持 OpenSearch 的网站,在浏览器地址栏输入网址后,按Tab键,可在此网站内部进行搜索,这对部分 .com 结尾网站有效。例如地址栏输入“zhihu.com”,然后按一下Tab键,直接在知乎内部进行搜索,相当于 site:zhihu.com

2017.05.01 @深圳.南山; last modify:2017.05.17。

猜你感兴趣(/有用)文章:

如何优雅地运用 Chrome (Google)的更多相关文章

  1. 优雅的使用Chrome调试Node程序

    前言 我不知道大家用什么来调试node程序.可能有的人用node-inspect,但是这货很久没更新了,而且一堆的bug用起来很不爽:可能有的人用命令行来,但是这样操作不够灵活:还有人只用consol ...

  2. Chrome Google浏览器下载

    https://support.google.com/chrome/answer/95346?co=GENIE.Platform%3DDesktop&hl=zh-Hans    下载和安装 G ...

  3. 添加了有道生词本的 chrome google翻译扩展和有道翻译扩展

    在chrome发布项目,需要先花美金认证,还得要美国ID,无奈. 直接上源码,需手动导入. 原始项目源码并未开源,个人是从chrome本地文件里拿出来的,拓展来的,侵删(本来想着自已写一个,业余时间, ...

  4. chrome google plugins

    Advanced REST client  Axure RP Extension for Chrome  Charset  Chrono下载管理器  Code Cola  CSS Sprite Gen ...

  5. chrome google mozilla firefox bookmarks import export

    chrome导出导入bookmarks 1◆ google帐号 自己申请,脑补   2◆ google访问 脑补   suggestion   Lantern   3◆ 步骤 4◆ 导入 sample ...

  6. Chrome Google 快捷键

    窗口和标签页快捷方式 Ctrl+N 打开新窗口 按住 Ctrl‎ 键,然后点击链接 在新标签页中打开链接 按住 Shift 键,然后点击链接 在新窗口中打开链接 Alt+F4 关闭当前窗口 Ctrl+ ...

  7. Google Chrome 应用商店上传扩展程序

    1. 进入 Google 开发者中心 网址: https://chrome.google.com/webstore/developer/dashboard?hl=zh-cn 2. 添加新项 上传后,出 ...

  8. Google Chrome 55 Released – Install on RHEL/CentOS 7/6 and Fedora 25-20

    Google Chrome is a freeware web browser developed by Google Inc. Google Chrome team proudly announce ...

  9. 发布 Google Chrome插件教程

    换个视角,世界不一样.嘘~~~ 如果你会使用js的话,那么你就可以自己动手写一个chrome插件,而且非常容易.google是一个全球化的平台,想想自己的程序被世界人民所使用,是不是很激动? 注册开发 ...

随机推荐

  1. Java中类的继承,属性和方法的四种修饰符的作用范围,final关键字,java的三大特点中的2个:封装和多态,以及多态的一个设计模式,模板方法模式(template method)

    (一)Java中的继承: 关于继承,在Java中类的继承只能是单继承,不像C+++那样灵活,可以多继承,多继承的后果就是各种关系乱套,就相当于一个孩子有2个母亲一样,社会关系的复杂,不利于程序后期的开 ...

  2. JSAAS的Activiti会签开发扩展处理

    1.什么是会签? 在流程业务管理中,任务是通常都是由一个人去处理的,而多个人同时处理一个任务,这种任务我们称之为会签任务.这种业务需求很常见,如一个请款单,领导审批环节中,就需要多个部门领导签字.在流 ...

  3. 老李分享:robotium常用API 2

    断言: 具体请查看官网 断言方法assert(robotium特有的断言方式,实际项目中和Junit的assert方法配合使用) void assertCurrentActivity (String ...

  4. Selenium测试专项三班隆重开班

    Selenium测试专项三班隆重开班 应广大测试技术人员要求,以及企业技术需求.Selenium提前一周开课了,只针对合作的每家企业提供1-2个参训名额.预计培训60人次.但报名人数却远远超出我们预期 ...

  5. [翻译] 使用ElasticSearch,Kibana,ASP.NET Core和Docker可视化数据

    原文地址:http://www.dotnetcurry.com/aspnet/1354/elastic-search-kibana-in-docker-dotnet-core-app 想要轻松地通过许 ...

  6. memcached预热失败

    缓存逻辑:set和get方法通过中间层SocketServer,由SocketServer去操作缓存(同步备用缓存等) 预热逻辑:在SocketServer里面打日志,通过日志去预热新缓存 出现问题: ...

  7. C++中的继承详解(3)作用域与重定义,赋值兼容规则

    作用域与同名隐藏 一样的,先上代码 1 class A 2 { 3 public: 4 int a_data; 5 void a() 6 { 7 cout << "A" ...

  8. 跟着刚哥梳理java知识点——变量之间的类型转换(四)

    变量之间的类型转换主要包括自动类型转换和强制类型转换. 1.自动类型转换:当容量小的数据类型与容量大的数据类型做运算时,容量小的会自动的转换成容量大的类型. [知识点]: a)char,byte,sh ...

  9. 常见BOM实用对象

    1.跨浏览器获取窗口左边上边位置 2.IE9+.Chrome.Safari.Opera.Firefox支持下列属性. innerheight 返回浏览器窗口本身的高度. innerwidth  返回浏 ...

  10. 安装hadoop2.7.3

    hadoop3与hadoop2.x的变化很大,hadoop3很多东西现在做起来太麻烦了,这里先安装hadoop2.7.3 此贴学习地址http://www.yiibai.com/t/mapreduce ...