shell 搜索指定目录下所有 jar 文件生成csv文件
虽说比较简单,但希望分享给大家。按需求改成想找的:例如txt,xls 等。
脚本名 扫描的路径 文件名
testFind.sh / testFind.txt (如果未配置环境变量 ./testFind.sh / testFind.txt 或sh 启动)
function find(){
for file in `ls $1`
do
if [ -d $1"/"$file ]
then
e $1"/"$file $2
else
# echo -e $1"/"$file"\n" -> ${contentFile}"/"search_test.txt
# if [ -e $1"/"$file ];then
# echo $1/$file
# echo ""
# echo $1"/"$file >> ${contentFile}/search_test.txt
# echo "${file}" -> $contentFile/search_test.txt
# fi
if [[ ${file} =~ "." ]];then
if [ "${file##*.}"x = "jar"x ];then
sub=${file%.*}
# sedStr=${sub//-/_}
version=${sub##*-}
name=${sub%-*}
# echo "${name}"
if [[ $version == [0-9]* ]];then
# csv文件是以“,”分割的文件,所以拼逗号
echo "$sysname","${name}","$version","${file}","$1","" >> $contentFile/$sysname.csv
else
echo "$sysname","${name}",,"${file}","$1","" >> $contentFile/$sysname.csv
fi
fi
fi
fi
done
}
###########################main####################
if [ $# -lt 2 ]
then echo '请输入2个参数:[目标文件夹路径] , [系统英文名称] '
exit 3
fi
echo " "
echo "当前查询路径: $1"
echo " "
#当前执行的路径
contentFile=`pwd`
#文件名 我们是按照系统统计的所以命名这个
sysname=$2
#判断文件是否存在
if [ -e $contentFile/$sysname.csv ];then
rm -r $contentFile/$sysname.csv
fi
echo ""
echo "[开始]搜索所有 *jar* 文件---- "
echo ""
find $1 $2
echo "[结束] 清查看jar文件清单:$contentFile/$2.csv"
echo ""
exit 0
--结果这样的

shell 搜索指定目录下所有 jar 文件生成csv文件的更多相关文章
- 【C#】递归搜索指定目录下的指定项目(文件或目录)
---------------更新:201411201121--------------- 主要更新说明:将原bool recurse参数改为int depth,这样可以指定递归深度,而不是笼统的是否 ...
- C#递归搜索指定目录下的文件或目录
诚然可以使用现成的Directory类下的GetFiles.GetDirectories.GetFileSystemEntries这几个方法实现同样的功能,但请相信我不是蛋疼,原因是这几个方法在遇上[ ...
- linux 中 如何 搜索 指定目录 下 指定文件 的 指定内容
开发时,经常遇到 全局查找某些代码 linux 中 如何 检索 某 目录下指定文件 的 指定内容如下: //.点为查找当前目录 下 的 所有 *.php 文件里 有 hello 的文件 find . ...
- copy指定目录下包括子目录中所有的文件
#include <windows.h> #include <iostream> #include <string> using namespace std; DW ...
- shell 获取指定目录下文件名
有两个目录a.b,两个文件夹目录里有一些文件的文件名是一样,不过后缀名不同,我想把a文件夹下跟b文件夹里相同文件名的文件覆盖到b去,并删除b里同名而不同后缀的文件,文件很多 #!/bin/bas ...
- 搜索某个目录下所有jar包中的mapper目录下的xml文件
rm -rf /mapper/* find /data/app/app-*/lib ! -path "*xnpush*" ! -path "*portal*" ...
- [Python] 删除指定目录下后缀为 xxx 的过期文件
import os import time import datetime def should_remove(path, pattern, days): if not path.endswith(p ...
- 编写一个程序,把指定目录下的所有的带.java文件都拷贝到另一个目录中,拷贝成功后,把后缀名是.java的改成.txt。
package example; import java.io.*; public class Test { public static void main(String[] args) throws ...
- python实现指定目录下批量文件的单词计数:并发版本
在 文章 <python实现指定目录下批量文件的单词计数:串行版本>中, 总体思路是: A. 一次性获取指定目录下的所有符合条件的文件 -> B. 一次性获取所有文件的所有文件行 - ...
随机推荐
- RabbitMQ 工作图解
(转网上的图) (原文地址 ,http://www.cnblogs.com/knowledgesea/p/5296008.html)
- Knapsack Cryptosystem
Knapsack Cryptosystem 超大背包 折半查找 #include<bits/stdc++.h> using namespace std; typedef long long ...
- iOS开发自定义字体之静态字体
最后更新 2017-04-25 在iOS开发中经常会用到字体, 一般字体文件比较小的,单一的,几十k, 可以通过内置进去;如果字体文件比较多或者字体文件比较大,通常通过动态加载方式. 静态加载方式 将 ...
- Java网络编程与NIO详解11:Tomcat中的Connector源码分析(NIO)
本文转载 https://www.javadoop.com 本系列文章将整理到我在GitHub上的<Java面试指南>仓库,更多精彩内容请到我的仓库里查看 https://github.c ...
- 源码编译安装Apache/2.4.37-------踩了无数坑,重装了十几次服务器才会的,不容易啊!
1.先进入/usr/local/中创建三个文件夹 apr apr-util apache cd /usr/local目录 mkdir apr mkdir apr-util mkdir apache 2 ...
- 通过HookNtCreateSection 动态监控驱动sys、动态链接库dll、可执行文件exe加载
[cpp] view plaincopyprint? /* windows2003 x86/x64 window7 x86 windows2008 R2 x64测试通过 */ #include < ...
- After laptop installed fedora23
en_US.UTF-8和 zh_CN.UTF-8 en和zh是语言, US和CN是分地区. 两者的编码UTF-8都差不多.只是用语言环境来表示时间, 数字, 温度等的不同 自定义程序快捷键: 在选中条 ...
- Jmeter之Switch Controller
在测试过程中,各种不同的情况需要执行不同的操作,这个时候用if控制器比较麻烦,此时就可以使用Switch Controller代替. 一.界面显示 二.配置说明 1.名称:标识 2.注释:备注 3.S ...
- KETTLE——(例)简单的字段转换
一个简单的小例子:结合数据抽取.简单的字段转换.数据输出. 资源库连接.数据输入.数据输出.参见之前的文章. 基本的转换结构是这样的,我们从表中输入,选择我们需要的字段,已经对应的名称,然后将数据 ...
- python_001
一.python开发1.python基础 -基础 -基本数据类型 -函数 -面向对象2.网络编程3.web框架 -用于写网站4.设计模式 + 算法