LINUX下,用脚本处理一个目录所有文件的代码

简介: LINUX下,用脚本处理一个目录所有文件的代码

 文件convert-dir.sh

ROOT_DIR=/media/quantum6/disk/SOFTWARE/videos/wuxi
CONVERT_H264=/home/quantum6/Develop/videos/convert_to_h264_by_nv.sh
cd $ROOT_DIR
# 只列出目录
for path in $(ls -d *)
do
    # 检测是否目录 在次基础上进行递归处理。
    full_path=$ROOT_DIR/$path
    if [ -d $full_path ] ; then
        echo $full_path
    fi
    cp $CONVERT_H264 $full_path
    cd $full_path
    # 只列出文件
    for file in $(ls -f *)
    do
        # 检查是否文件
        # if [ -f $file ] ; then
        # 以converted-开头的不处理
        if [[ ${file:0:10} = "converted-" ]] ; then
            echo converted
            continue
        fi
        # 以h264结尾的不处理
        if [ "${file##*.}" = "h264" ]; then
            echo h264
            continue
        fi
        # 这个文件已经转换过了
        confile=converted-$file.h264
        if [ -f $confile ] ; then
            echo has converted $file
            continue;
        fi
        # 这些才处理。
        echo process $file
        ./convert_to_h264_by_nv.sh $file
    done
done

同目录下有文件convert_to_h264_by_nv.sh。

子目录是wuxi,执行:

convert-dir.sh wuxi
目录
打赏
0
0
0
0
17
分享
相关文章
|
9天前
|
Linux 常用文件查看命令
`cat` 命令用于连接文件并打印到标准输出,适用于快速查看和合并文本文件内容。常用示例包括:`cat file1.txt` 查看单个文件,`cat file1.txt file2.txt` 合并多个文件,`cat > filename` 创建新文件,`cat >> filename` 追加内容。`more` 和 `less` 命令用于分页查看文件,`tail` 命令则用于查看文件末尾内容,支持实时追踪日志更新,如 `tail -f file.log`。
30 5
Linux 常用文件查看命令
Linux|Transfer.sh 轻松实现文件共享
Linux|Transfer.sh 轻松实现文件共享
32 2
Linux|Transfer.sh 轻松实现文件共享
|
9天前
|
Linux目录删除指南:彻底解决“Is a directory”错误
在 Linux 系统中遇到 `cannot remove 'xxx': Is a directory` 错误,是因为删除目录时未使用正确参数。解决方法包括:1) 使用 `rmdir` 删除空目录或 `rm -r` 删除非空目录;2) 检查并调整目录权限(如通过 `sudo` 提权);3) 处理特殊场景,例如文件属性异常、特殊字符或进程占用;4) 替代方法如 `find -delete` 或文件系统修复。操作前建议备份数据,并启用防误删功能(如 `alias rm='rm -i'`)。掌握 `rm` 和 `rmdir` 的区别是关键。
40 1
linux怎么把文件传到docker里面
在现代应用开发中,Docker作为流行的虚拟化工具,广泛应用于微服务架构。文件传输到Docker容器是常见需求。常用方法包括:1) `docker cp`命令直接复制文件;2) 使用`-v`选项挂载宿主机目录,实现数据持久化和实时同步;3) 通过SCP/FTP协议传输文件;4) 在Dockerfile中构建镜像时添加文件。选择合适的方法并确保网络安全是关键。
106 1
|
1月前
|
Linux文件与目录的日常
目录的切换 一般使用(”pwd“)显示当前所在的目录 比如:当前目录是在home下面的,与用户名相同的文件夹,可以使用(”cd“)命令来切换目录; 进入下载目录(”cd home/a/下载“)这种从给目录开头的一长串路经”叫做绝对路径“; 进入图片目录(”cd .. /图片/“)".."代表当前路径的上级路径,相对于当前的目录而言的”叫做相对路径“,(”.“)代表当前路径; 如果,想快速切换,上一个所在目录可以(”cd - / cd..“); 如果,想快速切换,追原始的目录可以(”cd --“); 查看目录及文件
42 14
|
26天前
|
Linux 将所有文件和目录名重命名为小写
Linux 将所有文件和目录名重命名为小写
28 3
|
10月前
|
百度搜索:蓝易云【Linux中如何对文件进行压缩和解压缩?】
这些是在Linux中进行文件压缩和解压缩的常见方法。根据您的需求和具体情况,可能会使用其他压缩工具和选项。您可以通过查阅相应命令的帮助文档来获取更多详细信息。
105 1
Linux常用命令(文件目录操作、拷贝移动、打包压缩、文本编辑、查找)
Linux常用命令(文件目录操作、拷贝移动、打包压缩、文本编辑、查找)
|
10月前
|
Linux下文件增删改查定位压缩操作与权限所属用户
Linux下文件增删改查定位压缩操作与权限所属用户
92 0
26Linux - 文件管理(文件压缩解压:bzip2)
26Linux - 文件管理(文件压缩解压:bzip2)
81 0