shell - 遍历目录并批量操作

需求:遍历所有apk安装包并批量安装。

思路:应该有很多种方式可以实现,但是对shell命令不熟悉,选了最简单的一种。find命令应该更简洁,日后更新。

read -p "input path:" SPATH
install() {
filelist=`ls $SPATH`
for filename in $filelist; do
    if [ -f $filename ];then
        echo File: $filename
        adb install $filename
    elif [ -d $filename ]; then
    	cd $filename
    	install;
    	cd ../
fi
done
}

cd $SPATH
install
时间: 2024-08-26 02:43:09

shell - 遍历目录并批量操作的相关文章

shell 遍历目录 批量解压文件名含有某字符串及特定后缀的文件

#!/bin/sh mkdir  /home/zhengyk/Desktop/tmp  #创建临时文件夹,用来存放解压后的文件 #mkdir  /home/zhengyk/Desktop/local  #创建临时文件夹,用来存放过滤结果 list_alldir(){    for file in $1/* do if [ -d $file ]; then list_alldir $file else filename=${file##*/}  # 从路径中取出文件名及后缀 echo "$file

shell脚本遍历目录及其下子目录

用shell写了个递归遍历目录的脚本,本脚本实现递归遍历指定目录,打印目录下的文件名(全路径). #!/bin/sh       function scandir() {       local cur_dir parent_dir workdir       workdir=$1       cd ${workdir}       if [ ${workdir} = "/" ]       then           cur_dir=""       else 

Makefile 递归遍历目录(含子目录) 编译动态库

这里推荐一本书,Makefile手册,本人正在学习,多交流~ 一.统一编译所有子目录的文件 直接上Makefile内容了, AR=arLD=ldCC=gcc CFLAGS = -O2 -Wall  -I./Test \                -I./Test/Test1 \ #注:"\"后面不能有空格,并且该句写完后最好有个换行 #注释部分推荐在单独的一行编写 #动态库需要 -fPIC  -shared SOFLAGS = -O2 -fPIC -sharedTARGET = .

Linux C语言遍历目录结构

遍历目录结构查找文件是很常用的功能,今天介绍一下使用Linux C 遍历Linux目录结构的方法: linux提供几个系统调用,以便于直接目录的读取和操作: DIR * opendir(const char * pathname); struct dirent * readdir(DIR * dir_handle); int closedir(DIR * dir); int stat(const char *file_name, struct stat *buf); #include <unis

遍历目录下的所有文件-os.walk

1 #coding:utf-8 2 3 import os 4 5 6 for root,dirs,files in os.walk("D:"): 7 for fileItem in files: 8 print root + os.sep + fileItem 结果如下 遍历目录下的所有文件-os.walk,布布扣,bubuko.com

C/C++ 遍历目录文件,默认目录下

每次遇到这样的问题总会折腾很久,到网上搜,或者查资料,弄了很多次,但就是没记住,这次写程序又遇到了,干脆就把它都弄清楚了,然后顺便在这里记录一下,以后再遇到就不用到处去找了. 用 C/C++ 遍历目录文件主要有两种方式,分别对应在 Windows VS 环境下和 Linux\Unix 环境下的方法,它们各自所使用的函数如下: (Windows VS)_findfirst, _findnext, _findclose (Linux\Unix)opendir, readdir, closedir 下

lua在linxu和windows系统下的遍历目录的方法

在windows下遍历目录使用lfs库:例如遍历整个目录下的所有文件 local lfs = require "lfs" function findPathName(path)  local fileTbl = {}  for file in lfs.dir(path) do   if file ~= "." and file ~= ".." then     fileTbl[#fileTbl + 1] = file   end  end  re

php无限遍历目录

使用的函数有: isset()判断某个变量是否定义 chdir() 将当前目录改变为指定的目录. opendir() 打开目录. readdir()读取目录. getcwd().获取当前目录. 还用到了for  if  GET传值 大概就这些东东: 下面是代码: <?php if(isset($_GET['id']))//判断是否传值 { $s=str_replace(' ','+',$_GET['id']); $s=base64_decode($s);//接受传递的值 值一般是要打开的目录的绝

可编译为 UNICODE 和 ANSI 版本的遍历目录树程序_0.1

路径暂时是写死的 编译两个版本的程序: g++  treeT.cpp -municode -D_UNICODE -o treeT_UNIg++  treeT.cpp -o treeT_ASC 为了观察ANSI版在遍历文件夹如果遇到Unicode字符会发生什么情况而写来作对比的 他们都可以接收终端传送的中文字符 ANSI版: opendir/readdir 遍历目录遇到 UNICODE字符的时候会出问题 UNICODE版: 输出到stdout的时候,值>128 的UNICODE字符丢失 改为 Wr