find命令查找多个路径的数据
来源:互联网 发布:王一霏网络大电影 编辑:程序博客网 时间:2024/06/06 04:15
需求
假设我现在有这样的目录结构:
也就是目录结构是:
|ggservice
|————common
|————constant
|————model
|————v1
其中我要把common包和constant包打包到一起。
参数-o
要是能通过find
命令一次性的,把我们需要的数据查询出来就好了。
后来在网上找到了-o
参数。也就是or
的缩写。
命令就可以这样写:
find ./ -path '*/ggservice/common/*.class' -o -path '*/ggservice/constant/*.class'
这里需要说明下,java
文件我会使用javac
命令编译成class
文件,放到classes
文件夹中。
那么最后的命令我们就可以这么写:
# 对公共基础包进行打包export baseclass=`find ./ -path '*/ggservice/common/*.class' -o -path '*/ggservice/constant/*.class'`echo "ggservice-base.jar 打包情况":jar -cvf ${package}/ggservice-base.jar ${baseclass}
完整的命令
#!/bin/bashexport PATH=~/play-1.2.7:$PATH#获得当前目录cur=$(pwd)echo "pwd:"${cur}rm -rf ggservice-dataservice.jaroutput_path=${cur}/classespackage=${cur}/packageecho $output_pathif [ ! -d $output_path ]; then mkdir $output_pathfiif [ ! -d $package ]; then mkdir $packagefi## 获取依赖库和需要编译的java文件export libs=`find ./dataservice/lib -name "*.jar" |xargs|sed "s/ /:/g"`export javafiles=`find ./dataservice/ -name "*.java" |xargs|sed "s/ / /g"`export javautils=`find ./utils/app/ -name "*.java" |xargs|sed "s/ / /g"`export play_lib=/opt/play-1.2.7/framework/play-1.2.7.jarexport play_lib_common=`find /opt/play-1.2.7/framework/lib/ -name "*.jar" |xargs|sed "s/ /:/g"`#echo ${javafiles}#echo "公共---------"#echo ${javautils}# 清除rm -rf package/*# 清除编译后的class文件rm -rf ${output_path}/*# 编译javac -d ${cur}/classes -cp ${libs}:$play_lib:$play_lib_common -encoding utf-8 ${javafiles} ${javautils}# 分批打包cd /home/jenkins/workspace/ggservice/dataservice/app/ggservice/v1/dir=$(ls -l |awk '/^d/ {print $NF}')cd $output_pathfor i in $dirdo echo "ggservice-"${i}".jar打包情况": jar -cvf ${package}/ggservice-${i}.jar */v1/$i/*done# 对公共基础包进行打包export baseclass=`find ./ -path '*/ggservice/common/*.class' -o -path '*/ggservice/constant/*.class'`echo "ggservice-base.jar 打包情况":jar -cvf ${package}/ggservice-base.jar ${baseclass}
其他类似参数
参数-a:
-a参数就是and
的缩写,也就是要同时满足的意思。
参数-not
查询不满足条件的文件
参数-size
查询满足文件大小的文件
0 0
- find命令查找多个路径的数据
- Linux中的find的命令 不在某路径查找
- 功能强大的查找命令:find
- 强大的查找命令find
- linux的5个查找命令 find、locate、whereis、which、type
- Linux下4个查找命令which、whereis、locate、find的总结
- Linux下4个查找命令which、whereis、locate、find的区别
- linux的find查找命令用法
- linux下的查找文件命令find
- 查找命令find的常见用法
- 查找文件命令find
- linux find查找命令
- find 命令查找文件
- Find 查找命令
- 文件查找命令find:
- find 查找文件命令
- shell find查找命令
- find命令查找文件
- GAN——WGAN
- 微信浏览器使用安卓的回退按钮问题?
- html-5
- Maven的安装及配置、Maven在Eclipse中的配置
- 去除webrtc中的signalserver
- find命令查找多个路径的数据
- 中国货币超发根源是经济结构严重失衡
- 超排序
- 公安大数据应用之情报分析与关联挖掘
- Effective Java——第二条
- Android进程保活
- PAT乙级1046 划拳
- Android SDK由几层基础架构所组成?各层的主要功能,组成各是什么?
- MongoDB的初次相遇(一)