shell脚本遍历当前目录下以数字命名的目录,并打印
#!/bin/bash single='' #定义以个位数为目录的集合
double='' #定位十位数为目录的集合
#按照需要可以根据实际情况再定义以百位数为目录的集合 for dir in `ls -d [0-9]*` #开始遍历
do
if [ `ls -d [0-9]* | wc -l` -ge 10 ];then #判断当前的目录总数是否大于等于10
if [ `echo $dir | wc -c` = 2 ];then #判断是否为个位数的目录
single="${single} $dir" #加入到集合中
else
double="${double} $dir" #加入到集合中
fi
fi done for dirname in ${single}
do
echo "#TODO $dirname"
done
for dirname in ${double}
do
echo "#TODO $dirname"
done #echo ${single}
#echo ${double} 遍历目录,并删除掉一些目录的方法
#!/bin/bash root_path="/opt/path"
for dir in `ls ./`
do
cd "${root_path}/${dir}"
echo "${dir}==dir"
for subdir in `ls ./`
do
cd "${root_path}/${dir}/${subdir}"
echo "${subdir}==sub dir."
for ssdir in `ls -t | awk 'NR>40{print $1}'`
do
echo "ssdir==${ssdir}"
echo "abs path=${root_path}/${dir}/${subdir}/${ssdir}/"
rm -rf ${root_path}/${dir}/${subdir}/${ssdir}
ls ${root_path}/${dir}/${subdir}/${ssdir}
done
done done
all_ports=`echo ${all_ports} | sed -e "s/,${port},/,/g"`
change(){
rep=$1
posts=`get_port`
port=`echo ${posts} | awk -F , '{print $2}'`
ja="ja_co_co=\" -javaagent:${JACOCOAGENT}=includes=\*,output=tcpserver,port=${port},address=\*,append=true\""
if [ -f "${ss}" ];then
echo "${rep} === ${posts}"
echo "${ss}"
sed -i "/^[[:space:]]*nohup java/i\\${ja}" ${ss}
sed -i "s/^[[:space:]]*nohup java/& \$\{ja_co_co\}/g" ${ss}
#sed -i "/^${rep}/a${rep}=\"\ \$\{${rep}\}\ ${arg}\ \"" ${ss}
fi
}
shell脚本遍历当前目录下以数字命名的目录,并打印的更多相关文章
- proc文件系统探索 之 以数字命名的目录
在proc根目录下,以数字命名的目录表示当前一个运行的进程,目录名即为进程的pid.其内的目录和文件给出了一些关于该进程的信息. niutao@niutao-desktop:/proc/6584$ l ...
- PHP和shell脚本遍历目录及其下子目录
用shell写了个递归遍历目录的脚本,本脚本实现递归遍历指定目录,打印目录下的文件名(全路径). #!/bin/sh function scandir() { local cu ...
- $CRS_HOME/cdata下大量数字命名的文件,占用空间大
问题现象: <CRS_HOME>/cdata目录下存在大量数字命名的文件,导致文件系统爆满 $ls -alrth /opt/oracle/product/CRS/cdata/crs ...
- 关于windows下编写的shell脚本在linux下无法运行报错问题
首先,你写的shell脚本必须是正确的, 其次,无法运行的原因:因为windows下的换行是两个字节,而你上传到linux,linux下换行是两个字节,所以编译的酒不正确的,导致无法 运行脚本, 这种 ...
- Linux shell 脚本攻略之批量重命名
摘自:<Linux shell 脚本攻略>
- 170509、文本编辑器编写的shell脚本在linux下无法执行的解决方法
今天碰到一个奇怪的问题,编写好的shell脚本再linux上执行一直提示找不到文件或目录,后来想想是文本编辑器的问题,记录下来!!! 1.查看当前文本格式 Notepad++界面中,在右下角有文件格式 ...
- Linux入门第五天——shell脚本入门(下)基础语法之调试debug
一.如何debug 1.通过sh命令的参数: sh [-nvx] scripts.sh 选项与参数: -n :不要执行 script,仅查询语法的问题: -v :再执行 sccript 前,先将 sc ...
- linux shell 脚本攻略学习15--如何只列出目录,如何快速切换目录
工作中经常遇到关于目录方面的问题,例如,如何只列出当前目录下的所有目录,以及如何快速高效的切换目录,而不需要使用鼠标,下面将简单介绍关于这两方面的解决方案: 一.如何只列出目录? 看似简单的任务,其实 ...
- bat遍历当前目录下的文件,批量重命名
@echo off setlocal enabledelayedexpansion for %%x in (*) do ( if not "%%x"=="demo.bat ...
随机推荐
- Vuex详解
一.什么是Vuex 官网解释如下: Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式.它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化.Vuex ...
- linux 编译运行c文件
在ubuntu安装gcc 编辑 test.c /* Not stdio.h */ #include <unistd.h> void main() { char str[100]; /*Wr ...
- 利用Navicate把SQLServer转MYSQL的方法(连数据)
中文乱码问题:https://pqcc.iteye.com/blog/661640 本次转换需要依赖使用工具Navicat Premium. 首先,将数据库移至本地SQLServer,我试过直接在局域 ...
- CUDA加opencv复现导向滤波算法
CUDA是GPU通用计算的一种,其中现在大热的深度学习底层GPU计算差不多都选择的CUDA,在这我们先简单了解下其中的一些概念,为了好理解,我们先用DX11里的Compute shader来和CUDA ...
- 磁盘 I/O 优化
磁盘 I/O 优化 1. 性能检测 我们的应用程序通常都需要访问磁盘系统,而磁盘 I/O 通常都很耗时, 要判断 I/O 是否是一个瓶颈,有一些参数指标可以参考. 我们可以压力测试应用程序看系统的 I ...
- WinForm中一个窗体调用另一个窗体
[转] WinForm中一个窗体调用另一个窗体的控件和事件的方法(附带源码) //如果想打开一个 Form2 的窗体类,只需要: Form2 form = new Form2(); //有没有参数得看 ...
- [踩坑日记]spring mvc
目录 找不到javax.servlet.ServletException的类文件 idea 清除tomcat缓存 IOException parsing XML document from Servl ...
- 【ERROR】no matching function for call to 'std::basic_ifstream<char>::basic_ifstream
错误记录:QT中使用 no matching function for call to 'std::basic_ifstream<char>::basic_ifstream(QString ...
- mybatis batch批量提交大量数据
转载:https://blog.csdn.net/Java_Mr_Zheng/article/details/50476757 在xml文件配置多条参数同时插入: <insert id=&quo ...
- js多个(N)个数组的的元素组合排序算法,多维数组的排列组合或多个数组之间的排列组合
现在有一批手机,其中颜色有['白色','黑色','金色','粉红色']:内存大小有['16G','32G','64G','128G'],版本有['移动','联通','电信'],要求写一个算法,实现[[ ...