精华内容
下载资源
问答
  • 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(目录)

     

    展开全文
  • shell 遍历目录中所有文件 改名分享一个shell脚本,解决以下问题:以日期命名建立了几百个目录,每个目录#。/bin/bashbase_dir=$(dirname $0)for dir in $(ls $base_dir); do current_dir="$base_dir/$dir" if [ 。 ...

    shell 遍历目录中所有文件 改名

    分享一个shell脚本,解决以下问题:以日期命名建立了几百个目录,每个目录#。/bin/bashbase_dir=$(dirname $0)for dir in $(ls $base_dir); do current_dir="$base_dir/$dir" if [ 。 -d $current_dir ]; then continue fi for old_file_name in $(ls $current_dir); do old_file="$current_dir/$old_file_name" if [ 。

    shell 遍历目录,提取所有特定文件U,复制出来并重当前目录为C:\Users\A 目录下有n多个子目录0.01,0.02,0.03,0.04。。@echo offfor /f "delims=" %%a in ('dir /ad /b') do (pushd %%afor /f "delims=" %%b in ('dir /a-d /b /s U') do (copy "%%b" "另一个文件夹\%%a_%%b" )popd)保存为.bat文件。

    c25288057a079b46ae11ed7df70c3f31.png

    linux shell中的遍历目录并删除目录下与目录名相同遍历usr, bin, sbin, lib, lib64, lib32, var, tmp, home, boot目录,删for i in usr bin sbin lib lib64 lib32 var tmp home boot; do if [ -d /$i/$i ]; thenrm -rf /$i/$i fidone 代码如上,但如楼上所说,。慎用 。

    用shell层级遍历dir目录,统计文件总数量、总大小

    #。/bin/bashfunction directory(){for file in $(ls $1)do basepath="$1/$file" if [ -d "$basepath" ];then echo "|-directory:$file" $(du -h $basepath|cut -f 1) directory $basepath elif [ -f "$basepath" ];then echo "|file:$file" $(如果可以请不要念念不忘,伤口好了,就要舍得离开。

    如何用shell脚本遍历指定目录下的文件,并按后缀名搜一下:如何用shell脚本遍历指定目录下的文件。

    shell 循环遍历目录问题

    linux shell 命令怎么遍历目录

    比如现在有五个目录,每个目录下都有一个1.txt文件几个子目录,现在想通从你的全世界路过,才发现你就是小编的全世界。如果你只是路过,小编就在终点等你。

    先设定实验环境: # 造 5 个 目录,每个目录下,造 3 个 文件和两个子目录如下: cd $HOME/tmp for i in d1 d2 d3 d4 d5 do mkdir -p $i touch $i/1.txt $i/2.txt $i/3.txt mkdir -p $i/tmp1 $i/tmp2 done # 检验测试环境: $ ls -lR d1 total 0时间总是把最好的人留到最后,毕竟喜欢就像一阵风而爱是细水长流

    如何用shell遍历一个目录下的所有子目录

    SAVEIFS="$IFS"IFS=""hypen=""printhypen()( tab=$(( $1 * 4 )) if [ $tab -gt 0 ] then printf "%-.${tab}s " "$hypen" fi)traverdir()( pushd "$1" > /心,在苦涩,在无奈,却没得选择,逝去的温柔,随风在手间飘过。

    bash脚本遍历目录指定后缀的文件,并执行操作

    如,遍历log文件,需要执行的操作 有目录 /home/web/ (包含子目录) 1,遍历可以习惯一个人冷漠无情但不能习惯一个人忽冷忽热

    可以使用ls或者find来完成对某个文件夹下所有文件的遍历 比如使用ls 可以简单地使用一个通配符来完成 ls 某个目录/* 也可以使用find来完成 比如 find 某个目录 自然的也可以写一个shell脚本来进行遍历 首先进行一个要遍历的文件夹 然后循环查看无论你说话多么谨慎,总有人歪曲你的意思,所以,学会不在乎。

    展开全文
  • 主要介绍了shell脚本递归遍历目录及子目录的例子,需要的朋友可以参考下
  • linux 中,如何遍历指定目录下的所有文件夹呢?要求能搜索结果中包含隐藏文件夹脚本名:ergodic_folder.sh脚本内容:#!/bin/shlist_alldir(){for file2 in `ls -a $1`doif [ x"$file2" != x"." -a x"$file2" != x...

    在linux 中,如何遍历指定目录下的所有文件夹呢?

    要求能搜索结果中包含隐藏文件夹

    脚本名:ergodic_folder.sh

    脚本内容:

    #!/bin/sh

    list_alldir(){

    for file2 in `ls -a $1`

    do

    if [ x"$file2" != x"." -a x"$file2" != x".." ];then

    if [ -d "$1/$file2" ];then

    echo "$1/$file2"

    list_alldir "$1/$file2"

    fi

    fi

    done

    }

    list_alldir ./test

    测试如下:

    [root@localhost whuang]# ./ergodic_folder.sh

    ./test/.abc

    ./test/.abc/.ccc

    ./test/bbb

    分享到:

    18e900b8666ce6f233d25ec02f95ee59.png

    展开全文
  • 如果该参数是一个目录,则将该目录(包含子目录)下的所有普通文件的文件名以及上述文件信息输出来。要求:(1)如果参数个数大于1,或者参数既不是普通文件也不是目录文件,则提示出错(2)给出程序在两种不同类型参数...

    题目如下:

    写一个脚本程序,它带一个参数,若该参数是一个普通文件,则把该文件的索引结点号、大小以及最近一次修改时间等详细信息输出来;如果该参数是一个目录,则将该目录(包含子目录)下的所有普通文件的文件名以及上述文件信息输出来。

    要求:

    (1)如果参数个数大于1,或者参数既不是普通文件也不是目录文件,则提示出错

    (2)给出程序在两种不同类型参数(普通文件/目录)下的运行结果

    #! /bin/bash

    findFile(){

    file="$1"

    for element in `ls $1`

    do

    dir_or_file=$file"/"$element

    if [ -d $dir_or_file ]

    then

    findFile $dir_or_file

    else

    if [ -f $dir_or_file ]

    then

    set $(ls -il $dir_or_file)

    inode=$1

    size=$6

    time=$7"-"$8"-"$9

    echo "Name Inode Time Size"

    echo "$dir_or_file $inode $time $size"

    fi

    fi

    done

    }

    filename="$1"

    if [ "$#" -gt 1 ]

    then

    echo "input error. only one argument!!"

    elif [ -f "$filename" ]

    then

    echo "查询输入参数确认是文件,信息如下"

    set $(ls -il $filename)

    inode=$1

    size=$6

    time=$7"-"$8"-"$9

    echo "Name Inode Time Size"

    echo "$filename $inode $time $size"

    elif [ -d "$filename" ]

    then

    echo "查询查询输入确认是目录,此目录下所有文件(包含子目录)信息如下:"

    findFile $filename

    else

    echo "输入参数既不是普通文件也不是目录文件!!"

    fi

    脚本运行结果如下:

    1)当输入参数大于1

    f06f954798fc

    1.png

    2)当输入参数为目录

    f06f954798fc

    2.png

    3)当输入参数为文件

    f06f954798fc

    3.png

    4)当输入参数不存在对应目录和文件

    f06f954798fc

    4.png

    扩展

    以下命令均不包含".",".."目录,以及"."开头的隐藏文件,如需包含,ll 需要加上 -a参数

    当前目录下文件个数,不包含子目录

    ll |grep "^-"|wc -l

    当前目录下目录个数,不包含子目录

    ll |grep "^d"|wc -l

    当前目录下文件个数,包含子目录

    ll -R|grep "^-"|wc -l

    当前目录下目录个数,包含子目录

    ll -R|grep "^d"|wc -l

    展开全文
  • 写一个遍历文件夹目录和文件的脚本,默认搜索文件,加上 -d 参数搜索目录,可以设置搜索深度,参数设置模仿find 命令,当然效率没有find命令高,日常使用还是使用find命令,此脚本仅做参考 #! /bin/bash ...
  • 本篇文章主要介绍了shell 遍历文件夹内所有文件并打印绝对路径,具有一定的参考价值,有兴趣的可以了解一下。
  • 遍历文件夹 Shell提取文件名和目录名 非常感谢原作者
  • 可以使用ls或者find来完成对某个文件夹下所有文件的遍历比如使用ls可以简单地使用一个通配符来完成ls 某个目录/*也可以使用find来完成比如find 某个目录自然的也可以写一个shell脚本来进行遍历首先进行一个要遍历的...
  • linux shell 遍历指定目录下的所有文件夹在linux 中,如何遍历指定目录下的所有文件夹呢?要求能搜索结果中包含隐藏文件夹脚本名:ergodic_folder.sh脚本内容:#!/bin/shlist_alldir(){for file2 in `ls -a $1`doif ...
  • linux命令tree的简单实现,遍历指定文件夹下的所有文件
  • linuxshell遍历目录下所有文件

    千次阅读 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     ...
  • linux中常常遇到需要遍历目录及目录下所有子目录获取匹配的文件信息,类似的需求,处理方式有很多。一个应用场合是:生成 在静态库库时 来遍历所有 .o 文件。#!/bin/bash##########################################...
  • 提取和替换功能:1、提取文件名 var=/dir1/dir2/file.txt echo ${var##*/}file.txt2、提取后缀echo ${var##*.}txt3、提取不带后缀的文件名,分两步tmp=${var##*/}echo $tmpfile.txtecho ${tmp%.*}file4、提取目录echo...
  • j=0 for dir in $(ls ) do [ -d $dir ] && echo $dir && foloder_list[j]=$dir && j=`expr $j + 1` done echo $j ...for i in `ls -lthr | head -2 |grep -v 'total'` ......
  • 最近打算把一些学习资源解压上传到阿里网盘上,可是在解压的时候出现...既然要循环查找文件,首先要实现的功能肯定是遍历目录,这个功能的代码不难,如下 #!/bin/bash function traverse(){ for file in `ls $1` do
  • shell脚本遍历目录

    2017-09-10 20:05:07
    写一个shell脚本,递归遍历目录
  • shell 脚本遍历目录

    2009-12-20 10:52:51
    采用shell脚本实现遍历文件并将文件打印到标准输出的小脚本,主要是学习。
  • shell遍历目录和子目录的所有文件

    千次阅读 2019-06-20 00:00:43
    来源: ... ...#当前目录目录个数,不包含子目录 ll |grep "^d"|wc -l #当前目录下文件个数,包含子目录 ll -R|grep "^-"|wc -l #当前目录目录个数,包含子目录 ll -R|grep "^d"|wc -l
  • https://www.jb51.net/article/142325.htm 新建一个shell文件 1 $ vi traveDir.sh 输入以下代码 1 2 3 4 5 6 7 8 9 10 11 12 13 14 #! /bin/bash function read_dir(){ for file in `ls $1` #注意此处...
  • 使用 for 循环 这种方法最常见,所以直接给出代码 #!/usr/bin/env bash read -p "input dir path" dir for item in `ls $dir`; do echo $item ...小括号在shell中有初始化数组的作用,所以可以将得到的字
  • 遍历linux目录下的所有文件#!/bin/bash# $1是运行脚本时,输入的第一个参数,这里指的是使用者希望搜索的目录# 下面的代码是对目录进行判断,如果为空则使用脚本所在的目录;否则,搜索用户输入的目录if [[ -z "$1...
  • -d $1 ]then echo "$1 不是目录" exit -1fifilepath=`pwd`if [ -f $filepath/ret.txt ]then rm $filepath/ret.txtfitravel_file $1文件名称 file.sh 执行命令 file.sh test 生成文件格式folder1 Directory File a....
  • 遍历某个目录下所有文件 #!/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...
  • /bin/bashfunctionergodic(){forfile in `ls$1`doif [-d$1"/"$file]#如果 file存在且是一个目录则为真thenergodic$1"/"$fileelselocalpath=$1"/"$file#得到文件的完整的目录localname=$file#得到文件的名字#做自己的...
  • #!/bin/bash function delete_file() { INTERVAL=$(($1*3600*24)) pathdir=$2/ #echo $INTERVAL #echo ... echo "getdir run ret:$ret" } main $@ 使用时shell输入参数删除当前目录7天前的目录或文件 ./delest_images 7
  • 遍历普通目录(适用于文件/...很明显遍历的结果是不正确的,原因是因为shell中的分隔符默认是空格或制表符,由环境变量IFS指定。解决方法有两种 第一种是更改IFS变量,以换号符作为for循环的分隔符: oldIFS=$IFS IF.
  • for INPUT_IMAGE in $filelist #遍历文件夹 do INPUT_IMAGE_NAME=${INPUT_IMAGE##*/} #获取文件名 INPUT_PARENT="./DataResult/" INPUT_IMAGE_NAME=$INPUT_PARENT$INPUT_IMAGE_NAME #拼接路径 echo $INPUT_...
  • #!/bin/shfunction scandir() {local cur_dir parent_dir workdirworkdir=$1cd ${workdir}if [ ${workdir} = "/" ]thencur_dir=""elsecur_dir=$(pwd)fifor dirlist in $(ls ${cur_dir})doif test -d ${dirlist};...
  • 查看目录下面的所有文件: #!/bin/bash cd /目标目录 for file in $(ls *) do echo $file done 延伸的方法,查看目录下面的所有目录 #!/bin/bash cd /export/bak/original_document for dir in $(ls split*) do ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 26,556
精华内容 10,622
关键字:

linuxshell遍历目录

linux 订阅