精华内容
下载资源
问答
  • 今天小编就为大家分享一篇使用Shell遍历目录及其子目录中的所有文件方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 使用 for 循环 这种方法最常见,所以直接给出代码 #!/usr/bin/env bash read -p "input dir path" dir for item in `ls $dir`; do echo $item ...小括号在shell中有初始化数组的作用,所以可以将得到的字

    使用 for 循环

    这种方法最常见,所以直接给出代码

    #!/usr/bin/env bash
    
    read -p "input dir path" dir
    
    for item in `ls $dir`; do
    	echo $item
    done
    

    使用 while 循环

    想使用 while ,目标就是得到一个包含目录下每一个项目的数组。

    如果直接 ./*, 这样变量拿到的其实是一个字符串,这不满足我们的要求。

    所以我们可以使用小括号,想这样:(./*)。小括号在shell中有初始化数组的作用,所以可以将得到的字符串,按空格分割每一项得到一个数组。

    然后,我们遍历数组输出每一项就好了。

    #!/usr/bin/env bash
    
    read -p "input:" dir
    
    files=($dir/*)
    i=0
    
    while [[ $i -lt ${#files[*]} ]]; do
        echo ${files[$i]}
        let i++
    done
    
    展开全文
  • linux shell遍历目录下每个文件

    千次阅读 2019-06-24 14:24:21
    #!/bin/bash function read_dir() { for file in `ls $1` do if [ -d $1"/"$file ] then read_dir $1"/"$file else echo $1"/"$file fi done } 使用示例: ...readdir xxx(目录) ...

    #!/bin/bash

    function read_dir() {

    for file in `ls $1`

    do

        if [ -d $1"/"$file ] 

        then

        read_dir $1"/"$file

        else

        echo $1"/"$file

        fi

    done

    }

     

    使用示例:

    readdir xxx(目录)

     

    展开全文
  • 说明:该脚本一共两个入参,第一个为被遍历目录,第二个为回调方法(目录下文件被遍历到时,针对这个文件需要做什么),该回调方法第一个入参必须是被遍历到的文件 # 遍历目录下所有文件(包括子目录) # 调用格式 ...

    说明:该脚本一共两个入参,第一个为被遍历目录,第二个为回调方法(目录下文件被遍历到时,针对这个文件需要做什么),该回调方法第一个入参必须是被遍历到的文件

    # 遍历目录下所有文件(包括子目录)
    # 调用格式 dirTraversal 被遍历目录 回调方法(参数为目录下的文件) 
    # 实例: dirTraversal /home callback   (callback为自定义回调方法)
    function dirTraversal(){
        for element in `ls $1`
        do  
            dir_or_file=$1"/"$element
            if [ -d $dir_or_file ]
            then 
                dirTraversal $dir_or_file
            else
            	# 回调
                $2 $dir_or_file
            fi  
        done
    }
    

    实例

    # 先自定义回调方法
    function callback(){
    	# 获取文件
    	file=$1
    	# 针对文件自定义处理逻辑
    }
    
    # 遍历目录
    dirTraversal /root callback
    
    展开全文
  • 本篇文章主要介绍了shell 遍历文件夹内所有文件并打印绝对路径,具有一定的参考价值,有兴趣的可以了解一下。
  • 删除文件,目录结构为:ip/年份/月份,每个人都有一份这样的目录现需要删除2012年以前的所有文件,2012年以后的删除特定月份
  • linux之shell遍历目录下所有文件

    千次阅读 2018-05-19 13:02:22
    有时候需要写脚本批量处理数据对某目录进行遍历通知执行相关操作 for file in 03/* do if test -f $file then echo $file fi if test -d $file then echo $file fi done     ...

    有时候需要写脚本批量处理数据对某目录进行遍历通知执行相关操作

    for file in 03/*
    do
        if test -f $file
        then
            echo $file
        fi
        if test -d $file
        then
            echo $file
        fi
    done

     

     

    展开全文
  • 遍历某个目录下所有文件 #!/bin/bash for file in $folder/* do echo $file done 遍历某个目录下所有 txt 文件 #!/bin/bash for file in $folder/*.txt do echo $file done 文件读取 #!/bin/bash # 方式1 cat...
  • 主要介绍了shell脚本递归遍历目录及子目录的例子,需要的朋友可以参考下
  • 实用shell脚本 遍历文件夹 日期比较
  • shell遍历目录下所有文件

    万次阅读 2016-05-03 23:29:23
    1 filelist=`ls /home/work/file/` for file in $filelist do echo $file done一定要切记filelist=后边的那个引号不是单引号,而是tab键上边的那个键,或者说是1左边的那个键。否则的话不起作用。...
  • 今天小编就为大家分享一篇shell 递归遍历目录下的所有文件并统一改名的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • shell 脚本遍历目录

    2009-12-20 10:52:51
    采用shell脚本实现遍历文件并将文件打印到标准输出的小脚本,主要是学习。
  • 新建一个shell文件 1 $ vi traveDir.sh 输入以下代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 #! /bin/bash function ...
  • shell遍历文件及目录

    2020-03-13 19:37:17
    # then # echo $1"/"$file # echo $var # fi fi done } #读取第一个参数 read_dir $1 使用方法 将该段脚本保存到本地dirList.sh中,对其赋予可执行权限,运行 ./dirList yourDirPath yourDirPath为你要遍历目录。...
  • #!/bin/bash function read_dir(){ for file in `ls $1` #注意此处这是两个反引号,表示运行系统命令 do if [ -d $1"/"$file ] #注意此处之间一定要加上空格,否则会报错 then read_dir $1"/"$file ...
  • 在将windows上的jsp网页移植到linux环境中时,发现一个个的转换编码及修改默认编码类型太慢,写此脚本进行尝试文件遍历~ 好久不写,手生了。 代码如下: #!/bin/bash # # SPATH=”/root/chengji/WebRoot” DPATH=”/...
  • #!/bin/bash file_count=0 folder_count=0 function FILE_COUNT(){ for file in * do if test -f $file then ((file_count++)) echo $file elif test -d ...
  • shell遍历某个目录下级的所有文件名

    千次阅读 2020-03-11 15:33:55
    #!/bin/bash for file in `ls /bin`; do echo ${file} ...
  • 1.编写代码 #!/bin/bash function getdir(){ for element in `ls $fd` ... dir_or_file=$fd"/"$element ...-d 判断对象是否存在,并且为目录 ...测试结果:打印出来了目标目录以及子目录下的所有文件
  • 最近打算把一些学习资源解压上传到阿里网盘上,可是在解压的时候出现...既然要循环查找文件,首先要实现的功能肯定是遍历目录,这个功能的代码不难,如下 #!/bin/bash function traverse(){ for file in `ls $1` do
  • 遍历文件夹 Shell提取文件名和目录名 非常感谢原作者
  • shell遍历名称带有空格的文件或目录

    万次阅读 2021-04-03 01:24:05
    问题背景:遍历带有空格的文件,直接把单个文件分隔成两个 #!/bin/bash for i in `ls 1/` do echo -e "file = $i\n" cat 1/$i >> total.txt done 目录结构 问题原因: 在linux中内置分隔符IFS(Internal ...
  • 参考博客: shell 递归遍历目录下的所有文件并统一改名的方法 1.递归遍历目录,将所有文件的名字由大写改为小写(包括后缀) 参考代码 #!/bin/bash # 文件夹改名 function changeName(){ new=`echo $1|tr 'A-Z' ...
  • 对linux命令tree的简单实现,遍历指定文件夹下的所有文件
  • 一、问题 我在虚拟机上装了一个CentOS 640bit的可视化Linux操作系统,然后可以按【ctrl+alt+F2】切换到CLI模式,即非可视化界面...今天讲最简单的,遍历目录; 二、分析 Linux系统使用的是正斜线,即【/】来分割目...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 42,530
精华内容 17,012
关键字:

shell遍历目录