美文网首页
linux递归查找文件夹下所有wav,移动到指定位置

linux递归查找文件夹下所有wav,移动到指定位置

作者: 牛奶大泡芙 | 来源:发表于2020-03-20 16:27 被阅读0次

    今天遇到了一个数据处理的问题,在linux服务器上,需要把一个文件夹下所有子文件夹中的wav文件移动到另一个位置,并且名字不变,下面就用sh脚本来实现一下


    局座.jpg
    #!/bin/bash
    
    function changePlace(){
      echo $1
      #这个方法里面可以对该文件进行操作
      mv $1 "/root/datas/data_thchs30/data_new/"
      #rm -r $1
    }
    function travFolder(){
      echo $1
      flist=`ls $1`
      cd $1
      #echo $flist
      for f in $flist
      do
        if test -d $f
        then
          #echo "dir:$f"
          travFolder $f
        else
          #echo "file:$f"
          changePlace $f
        fi
      done
      cd ../
    }
    travFolder $1
                    
    

    需要注意的是
    1、mv命令的第二个参数需要用引号,而不是反引号,否则会报错
    2、mv所跟的第二个参数是相对于当前wav的路径,而不是相对于sh文件的,此处建议选取绝对路径
    sh文件的执行方法是

    # ./train指代代码中的$1
    ./pre_newdata.sh ./train
    

    这就是问题的解决方法了,点个小心心再走吧❥(^_-)

    相关文章

      网友评论

          本文标题:linux递归查找文件夹下所有wav,移动到指定位置

          本文链接:https://www.haomeiwen.com/subject/sjgjyhtx.html