#网络搜索 ##google

谷歌给你你想要的,百度给你它想给你的

First of all , please use Google

无论对于技术人员搜索问题解决方案,或是科研人员进行学术搜索,又或是黑客们搜集目标资料,谷歌都是极好的选择。也许是这个星球上最好的选择:)

下边小结下可能时常用到的一些技巧

###与或非逻辑 ####与 +空格表示逻辑 #####示例 搜索所有包含编程入门的网页
搜索:编程 + 入门 或者 编程 入门 #####另外 你如果要求编程入门需要作为一个短语出现,那么需要这样搜索"编程入门",给短语加上双引号

####或 用大写的OR表示逻辑 #####示例 搜索所有包含编程入门的网页
搜索:编程 OR 入门 ####非 -表示逻辑 #####示例 搜索所有包含编程而不含入门的网页
搜索:编程 - 入门

###通配符、大小写、忽略字符 GOOGLE不支持通配符,如*?等,只能做精确查询
GOOGLE对大小写不敏感
英文符号(如问号,句号,逗号等)无法成为搜索关键字

###site,link,inurl,allinurl,intitle,allintitle

  • site:URL:表示搜索结果局限于某个具体网站
  • link:URL:返回所有链接到某个URL地址的网页,link不能与其他语法相混合操作
  • inurl:word1 word2:返回的网页链接中包含第一个关键字word1,后面的关键字word2则出现在链接中或者网页文档中
  • allinurl:word1 word2:语法返回的网页的链接中包含所有查询关键字。这个查询的对象只集中于网页的链接字符串
  • allintitleintitle的用法类似于上面的allinurl和inurl,只是后者对URL进行查询,而前者对网页的标题栏进行查询.即html里title之间的内容
  • related:URL:用来搜索结构内容方面相似的网页
  • cache:URL:用来搜索GOOGLE服务器上某页面的缓存,这个功能同“网页快照”,通常用于查找某些已经被删除的死链接网页
  • info用来显示与某链接相关的一系列搜索

###指定文件类型 filetype 举例:filetype:pdf ###PDF文档搜索 Google提供对PDF文档内文的检索
示例:搜索关于电子商务(ECOMMERCE)的PDF文档。
搜索:inurl:pdf ecommerce

##github todo…

#本地搜索 ##ack

ack is the better grep

ack是为程序员量身定制的grep,号称"可以替代99%grep的工作",以更简洁清晰的命令

###卖点

  • 速度快,因其只搜索有意义的东西。不会去搜索诸如.git和缓存之类的东西
  • 为源代码搜索而设计,更少的击键。write less do more

###安装 ####ubuntu sudo apt-get install ack-grep ####OS X brew install ack

###常用特性

  • 代码搜索
    • 在指定类型文件中查找
  • 文件查找
  • 支持正则

####代码搜索 ack-grep hello //默认是递归搜索(从当前目录开始)

#####在指定类型文件中查找 ack-grep --python django #查找所有python文件中出现的django

ack预定义了很多类型,可以用 –help-types 来查看,如果没有你想要的,也可以自定义。好比你的css是用Sass写的,只要在~/.ackrc 里增加一行: --type-add css=.scss

####文件查找 ack也可查找文件,免去结合find和grep的麻烦

1
2
3
:::text
ack-grep -f hello.py    # 查找全匹配的文件
ack-grep -g hello.py$    # 查找正则匹配的文件

###一些常用的参数

  • -n 不递归查找子目录 . ack-grep -n note 只在当前目录下的文件里查找

  • -i 忽略大小写. ack-grep -i note 也会匹配 Note

  • -f 查找文件 . ack-grep -f --css 列出所有的css文件。–x 等价于 –type=x

  • -g 匹配文件名. ack-grep -g note 会匹配所有文件名里包含note的文件 . ack-grep -g hello.py$ 查找正则匹配文件, 路径名也作为文件名的一部分!!

  • -C [NUM] 输出上下文 . ack-grep -C 5 note 会在上下各多输出5行

  • -Q 不转义 . ack-grep -Q 'note.url()' 不需要对点和括号进行转义了

###与Vim搭配 ack.vim

#参考