git bash中自定义文件检索工具

背景

相比于windows系统下默认使用的是bat脚本,常用linux系统的人可能对shell脚本更熟悉一些,因为shell里面的语法和我们在linux系统下常用的命令保持一致。
今天描述一种在windows系统中怎么能够通过shell脚本实现自定义文件检索工具的方法。

环境要求

因为windows下并没有shell执行环境,所以我们可以借助git自带的git bash环境。

实现自定义文件检索shell脚本

这里以实现一个检索当前目录下文件名中包含特定关键词的脚本为例。

function read_dir() {
    #echo "$1"
    search_str="init"  #这里关键词为init
    for file in `ls $1`
    do
        if [ -d $1"/"$file ]
	    then read_dir $1"/"$file  #递归检索子目录
        else
	    if [[ $file =~ $search_str ]]
                then echo $1"/"$file #打印文件名包含指定关键词的文件路径
	    fi
	    #echo `file $1"/"$file`
	fi
    done
}

read_dir $1

将以上内容保存到文件searchfile.sh中,当要检索文件时,只要执行脚本并带上路径参数即可

sh searchfile.sh {path}

将自定义脚本封装成一个命令

在linux环境中,可以通过alias将一段命令语句映射为一个短命令,这里将上面新做好的脚本设置为一个自定义检索命令。
我们首先要在系统环境变量中添加alias语句,在linux下大家设置环境变量一般是修改~/.bashrc,在git-bash中也是一样的,如果bashrc这个文件不存在,需要新建一个,添加以下语句

alias searchfile='sh ~/searchfile.sh'  #searchfile.sh脚本文件放到用户目录下

然后再修改~/.bash_profile,保证每次启动新的bash窗口时能自动使命令生效

source ~/.bashrc

保存之后,这时候就可以在git bash窗口中使用searchfile命令了。

总结

这里只是一个抛砖引玉的示例,我们可以通过熟悉的shell脚本封装出更多更强大的工具来,提高自己的工作效率。

参考

windows下alias在git Bash中的使用
使用Shell遍历目录及其子目录中的所有文件

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值