一、工具 f 的配置 使用
========== ========== ========== ========== ========== ==========  ====
一、配置方法:
首先在linux服务器根目录下创建一个bin目录,然后将f放到里面,然后按照下面方法配置后即可使用
1、ROOT用户
    查看PATH值
    echo $PATH
将自定义的命令文件放到任意一个目录下即可
即可在所有用户情况下使用该命令
 
2、普通用户
ls -a | grep bash
会找到.bashrc文件
在文件末尾加入一行:export PATH=$PATH:~/bin (shift+G文件结尾)
然后保存退出,执行source  .bashrc,使新增的命令生效
 
后面即可在自己的目录中全局使用该命令
 
二、使用方法:
1、查找字符串:
f [i] java/c/c++/xml/mk/h/all 字符串
2、查找文件:
f [i] 文件名称
 
i 是可以选的,表示是否区分大小写
n 是可以选的,表示搜索关键字默认显示上下5行
搜索字符串

如果你想在当前目录下 查找"hello,world!"字符串,可以这样:

========== ========== ========== ========== ========== ==========  ====

二、搜索字符串

grep -rn "hello,world!" *

* : 表示当前目录所有文件,也可以是某个文件名

-r 是递归查找

-n 是显示行号

-R 查找所有文件包含子目录

-i 忽略大小写

下面是一些有意思的命令行参数:

grep -i pattern files :不区分大小写地搜索。默认情况区分大小写,

grep -l pattern files :只列出匹配的文件名,

grep -L pattern files :列出不匹配的文件名,

grep -w pattern files :只匹配整个单词,而不是字符串的一部分(如匹配‘magic’,而不是‘magical’),

grep -C number pattern files :匹配的上下文分别显示[number]行,

grep pattern1 | pattern2 files :显示匹配 pattern1 或 pattern2 的行,

grep pattern1 files | grep pattern2 :显示既匹配 pattern1 又匹配 pattern2 的行。

这里还有些用于搜索的特殊符号:

\< 和 \> 分别标注单词的开始与结尾。

例如:

grep man * 会匹配 ‘Batman’、‘manic’、‘man’等,

grep '\<man' * 匹配‘manic’和‘man’,但不是‘Batman’,

grep '\<man\>' 只匹配‘man’,而不是‘Batman’或‘manic’等其他的字符串。

'^':指匹配的字符串在行首,

'$':指匹配的字符串在行尾,

2,xargs配合grep查找

find -type f -name '*.php'|xargs grep 'GroupRecord'

f文件的内容如下,复制粘贴建立文本即可

#!/bin/bash

file_type="java"
str_type="false"
String=""
name_str="name"
grep_str="grep" if test "$1" = "i"
then
name_str="iname"
grep_str="grep -i"
shift
fi if test "$1" = "n"
then
name_str="iname"
grep_str="grep -C 5"
shift
fi for Type in java c c++ xml mk h cpp all
do
if test "$Type" = "$1"
then
str_type="true"
file_type="$1"
shift
fi
done set "$*"
String="$1" if test "$str_type" = "true"
then
if test "$file_type" = "all"
then
find . -name "*.*" | xargs $grep_str "$String" --color=auto -rn
else
find . -name "*.$file_type" | xargs $grep_str --color=auto "$String" -rn
fi
else
find . -$name_str "*$String*"
fi

Linux下f命令配置的更多相关文章

  1. 阿里云OneinStack,Linux下tomcat命令

    阿里云OneinStack,Linux下tomcat命令 Linux下如何查看tomcat是否启动在Linux系统下,重启Tomcat使用命令操作的首先,进入Tomcat下的bin目录cd /usr/ ...

  2. 在linux下安装并配置mysql数据库

    在linux下安装并配置mysql数据库 工具/原料   MySql5.6 CentOS 方法/步骤   1 查找以前是否安装有mysql,使用下面命令: rpm -qa|grep -i mysql ...

  3. Linux下dmesg命令处理故障和收集系统信息的7种用法

    目录: <syslog之一:Linux syslog日志系统详解> <syslog之二:syslog协议及rsyslog服务全解析> <syslog之三:建立Window ...

  4. VMware Linux 下 Nginx 安装配置 - Tomcat 配置 (二)

    准备工作 相关浏览: VMware Linux 下 Nginx 安装配置 (一) 1. 选在 /usr/local/ 下创建 softs 文件夹,通过 ftp 命令 把 apache-tomcat-7 ...

  5. LINUX学习笔记——LINUX下EXP命令全库备份数据库文件

    LINUX下EXP命令全库备份数据库文件 1)建立备份目录,目录操作权限授权给Oracle用户 mkdir /backup  --创建backup文件夹 cd  /   --进入cd语句 ls  -l ...

  6. Linux下git安装配置

    一.Linux下git安装配置 2013-07-28 20:32:10|  分类: 默认分类 |  标签:linux  git  server  |举报|字号 订阅     http://abomby ...

  7. Linux下ps命令详解 Linux下ps命令的详细使用方法

    http://www.jb51.net/LINUXjishu/56578.html Linux下的ps命令比较常用 Linux下ps命令详解Linux上进程有5种状态:1. 运行(正在运行或在运行队列 ...

  8. 例解 Linux 下 Make 命令

    Linux 下 make 命令是系统管理员和程序员用的最频繁的命令之一.管理员用它通过命令行来编译和安装很多开源的工具,程序员用它来管理他们大型复杂的项目编译问题.本文我们将用一些实例来讨论 make ...

  9. Linux下Redis服务器安装配置

    说明:操作系统:CentOS1.安装编译工具yum install wget  make gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel ...

随机推荐

  1. sysctl -P 报错解决办法 error: "net.bridge.bridge-nf-call-ip6tables" is an unknown key

    error: "net.bridge.bridge-nf-call-ip6tables" is an unknown keyerror: "net.bridge.brid ...

  2. Java判断数字的奇偶

    package anli; import java.util.Scanner; public class jiou { public static void main(String[] args){ ...

  3. rcnn spp_net

    在http://www.cnblogs.com/jianyingzhou/p/4086578.html中 提到 rcnn开创性工作,但是计算时间太长,重复计算太大. spp_net将重复计算避免了 我 ...

  4. mysql初始(6)

    随着mysql的运用不断加深,一些更复杂点的用法又需要总结起来. 1.将一个表中的数据插入到另一个表中: a.两张表字段相同,并且数据全部插入,命令如下:  INSERT INTO 目标表 SELEC ...

  5. nopcommerce商城系统--技术与系统需求

    原址:http://www.nopcommerce.com/technologysystemrequirements.aspx 在这里,我们将着眼于nopCommerce的系统要求.为了运行nopCo ...

  6. http协议中到底都有什么内容?【持续更新】

    http协议中到底都会传输我电脑上的啥东西呢?主机名,账号密码? 没有主机名,有你这台主机的操作系统...也就是说他们会知道你的操作系统.....

  7. IPVS和Nginx两种WRR负载均衡算法详解

    动机 五一临近,四月也接近尾声,五一节乃小长假的最后一天.今天是最后一天工作日,竟然感冒了,半夜里翻来覆去无法安睡,加上窗外大飞机屋里小飞机(也就是蚊子)的骚扰,实在是必须起来做点有意义的事了!    ...

  8. ZOJ 3229 Shoot the Bullet | 有源汇可行流

    题目: 射命丸文要给幻想乡的居民照相,共照n天m个人,每天射命丸文照相数不多于d个,且一个人n天一共被拍的照片不能少于g个,且每天可照的人有限制,且这些人今天照的相片必须在[l,r]以内,求是否有可行 ...

  9. 洛谷 [CQOI2015]选数 解题报告

    [CQOI2015]选数 题目描述 我们知道,从区间\([L,H]\)(\(L\)和\(H\)为整数)中选取\(N\)个整数,总共有\((H-L+1)^N\)种方案. 小\(z\)很好奇这样选出的数的 ...

  10. 从零开始学习MXnet(三)之Model和Module

    在我们在MXnet中定义好symbol.写好dataiter并且准备好data之后,就可以开开心的去训练了.一般训练一个网络有两种常用的策略,基于model的和基于module的.今天,我想谈一谈他们 ...