Ubuntu22中的bash脚本记录

news/2025/2/27 5:41:22/

1 .for;do;done的使用对于批量处理非常方便

任务描述:需要使用多个不同位置的脚本,来处理一个路径下的数据集,在这个数据集中,还有若干不同的场景

脚本思想:为了简单方便,先赋值好各种路径,比如数据路径,脚本的路径,然后使用for语句来遍历数据集下的各个场景,然后使用脚本处理,直到for循环结束

bash">#!/bin/bash#数据集路径
base_dir="path/to/CO3D"#脚本所在项目路径
project1_dir="path/to/project1"
project2_dir="path/to/project2"#脚本在项目中的路径
script1="$project1_dir/script1"
script2="$project2_dir/script2"
script3="$project2_dir/script3"#其他文件路径,比如config、pth等等各种
config1="$project1_dir/config1"
config2="$project1_dir/config2"
pth="$project1_dir/pth"
png="$project1_dir/*.png"#执行脚本所可能需要的环境变量
INSTALL_PATH="$project_dir/g2o"
export LD_LIBRARY_PATH="$INSTALL_PATH/lib"#for语句,$dir就是具体的数据路径
for dir in $base_dir/*/; dosparse_frame="$dir/sparse_frame"output_dir="$dir/source"#搜索数据video1=$(find $dir -name "*_00_*.insv")video2=$(find $dir -name "*_10_*.insv")if [[ -n $video1 && -n $video2 ]]; thenecho "++++++++++++++++++++++++++++++++++++++++++++++++执行脚本1++++++++++++++++++++++++++++++++++++++++++++++++"$script1 参数1 $pth 参数2 $video1 参数3 $video2 参数4 $config1 参数5 $png --eval-log-dir . --resize 0.25echo "++++++++++++++++++++++++++++++++++++++++++++++++脚本2,下面是一个具体的示例++++++++++++++++++++++++++++++++++++++++++++++++"python $script2 --video1 $video1 --video2 $video2 --traj "$project_dir/keyframe_trajectory.txt" --downsample 1 --output $sparse_frameecho "++++++++++++++++++++++++++++++++++++++++++++++++脚本3++++++++++++++++++++++++++++++++++++++++++++++++"python $draw_mask $sparse_frameecho "++++++++++++++++++++++++++++++++++++++++++++++++脚本4++++++++++++++++++++++++++++++++++++++++++++++++"python $split_fisheye --input_dir $sparse_frame --output_dir $output_dirfi
done


http://www.ppmy.cn/news/1575185.html

相关文章

数据驱动未来!天合光能与永洪科技携手开启数字化新篇章

在信息化时代的今天,企业间的竞争早就超越了传统产品与服务的范畴,新的核心竞争力即——数据处理能力和信息技术的应用。作为数据技术领域的领军者,永洪科技凭借其深厚的技术积累和丰富的行业经验,成功助力天合光能实现数字化升级…

excel单、双字节字符转换函数(中英文输入法符号转换)

在Excel中通常使用函数WIDECHAR和ASC来实现单、双字节字符之间的转换。其中 WIDECHAR函数将所有的字符转换为双字节,ASC函数将所有的字符转换为单字节 首先来解释一下单双字节的含义。单字节一般对应英文输入法的输入,如英文字母,英文输入法…

十、大数据资源平台功能架构

一、大数据资源平台的功能架构图总体结构 大数据资源平台功能架构图 关键组件: 1.用户(顶行) 此部分标识与平台交互的各种利益相关者。 其中包括: 市领导 各部门分析师 区政府 外部组织 公民 开发人员 运营经理 2.功能模…

STM32的C语言软件延时函数

STM32的延时方法很多,其中采用定时器延时,可以得到较为精确的延时,但是有时对延时精度要求不高的场合,采用软件延时,也是必须的。特别是在RTOS系统中,使用SysTick的普通计数模式对延迟进行管理,…

【江科协-STM32】5. 输出比较

1. 输出比较简介 OC(Output Compare)输出比较。 输出比较可以通过CNT(CNT计数器)与CCR寄存器值的关系,来对输出电平进行置1、置0或翻转的操作,用于输出一定频率和占空比的PWM波形。 :::tip CNT计数器是正向计数器。它只能正向累…

React加TypeScript最新部署完整版

React TypeScript 全流程部署指南 一、环境准备与项目初始化 关于node.js及npm的安装请参见我的文章。 1.1 创建项目(React TypeScript) # 使用官方推荐脚手架(Vite 5.x) npx create-vitelatest my-app --template react-ts …

国产编辑器EverEdit - 在编辑器中对文本进行排序

1 排序 1.1 应用场景 某些场景下用户需要对文本进行排序,比如:用户正在编辑函数列表,对函数列表按名称按字母A-Z排序。 1.2 使用方法 1.2.1 对选中文本进行排序 在编辑器中选中要排序的文本。选择主菜单工具 -> 排序 -> 升序排序 如…

(面试经典问题之连接池篇)连接池构成、作用及其基本原理详解

一、什么是连接池 连接池一般指的是数据库连接池(connection pooling),是指程序启动时建立足够的数据库连接,并将这些连接组成一个连接池,由程序动态的对池中的连接进行申请,使用,释放&#xf…