用shell 批量处理任务
2015-08-25 23:47
489 查看
参考
-shell教程-ls 的用法
#shell 代码
for i in 1 2 3 4 5 6 do j=0 while [ $j -lt 20 ] do j=`expr $j + 1` echo "i=$i j=$j" ./objectExtracter.exe D:\\Program\\matlab\\bgslibrary_mfc\\dataset\\video.sqlite $i $j done done for file in `ls /home/user` do echo $file cp /home/user/$file/*.doc /home/user/document/ done
注意 expr, 空格是必要的,同时 ` 不是 ’ (引号)
$ expr –helpUsage: expr EXPRESSION
ARG1 | ARG2 ARG1 if it is neither null nor 0, otherwise ARG2
ARG1 & ARG2 ARG1 if neither argument is null or 0, otherwise 0
ARG1 < ARG2 ARG1 is less than ARG2
ARG1 <= ARG2 ARG1 is less than or equal to ARG2
ARG1 = ARG2 ARG1 is equal to ARG2
ARG1 != ARG2 ARG1 is unequal to ARG2
ARG1 >= ARG2 ARG1 is greater than or equal to ARG2
ARG1 > ARG2 ARG1 is greater than ARG2
ARG1 + ARG2 arithmetic sum of ARG1 and ARG2
ARG1 - ARG2 arithmetic difference of ARG1 and ARG2
ARG1 * ARG2 arithmetic product of ARG1 and ARG2
ARG1 / ARG2 arithmetic quotient of ARG1 divided by ARG2
ARG1 % ARG2 arithmetic remainder of ARG1 divided by ARG2
match STRING REGEXP same as STRING : REGEXP
substr STRING POS LENGTH substring of STRING, POS counted from 1
index STRING CHARS index in STRING where any CHARS is found, or 0
length STRING length of STRING
quote TOKEN interpret TOKEN as a string, even if it is a
keyword like
match' or an operator like/’
( EXPRESSION ) value of EXPRESSION
递归显示目录
$ ls -R |grep “./”./BGSLib:
./BGSLib/include:
./BGSLib/include/dp:
./BGSLib/include/jmo:
./BGSLib/include/lb:
…
显示所有源文件的路径的shell脚本
recursiveAll () { outfile=$2 file=$1 echo "file is $file" if [ -f $file ] then echo "File is an ordinary file" echo $file >> $outfile else echo "This is special file" echo $file >> special.txt if [ -d $file ] then echo "File is a directory" echo $file >> dir.txt for subfile in $file/* do echo "subfile is $subfile" recursiveAll $subfile $outfile done else echo "This is not a directory" echo $file >> error.txt fi fi } echo "" > dir.txt echo "" > special.txt echo "" > error.txt echo "" > files.txt recursiveAll /E/yzbx_programe/QT/qt_bgslibrary/package_bgs files.txt cat files.txt | grep .cpp$
输出:
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/AdaptiveBackgroundLearning.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/AdaptiveSelectiveBackgroundLearnin
g.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/FrameDifferenceBGS.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/GMG.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/MixtureOfGaussianV1BGS.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/MixtureOfGaussianV2BGS.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/StaticFrameDifferenceBGS.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/WeightedMovingMeanBGS.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/WeightedMovingVarianceBGS.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/ae/KDE.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/ae/KernelTable.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/ae/NPBGSubtractor.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/ae/NPBGmodel.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/av/TBackground.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/av/TBackgroundVuMeter.cpp
/E/yzbx_programe/QT/qt_bgslibrary/package_bgs/av/VuMeter.cpp
…
相关文章推荐
- 《C算法》读书笔记8:shell sort
- 8-23 linux文件管理常用命令和Bash特性
- linux下bash特性和基础管理类命令(一)
- shell-流程控制while/until
- 采用adb shell 调试 Android 串口
- shell 新学命令整理
- shell 括号用法介绍
- shell基础之二:条件判断语句if、case及read命令,
- linux Web服务程序监控shell脚本
- c语言执行shell命令
- Bash基础(2) 通配符 组合键 数据重定向 管道 tee
- 希尔排序-ShellSort
- ubuntu select /bin/bash or /bin/dash
- Freesshd配合xshell实现sftp上传
- shell编程之if判断的总结
- shell中各种括号的作用()、(())、[]、[[]]、{}
- python执行shell命令的四种方法
- php\shell 中改变和获取工作目录、执行文件目录
- linux shell 正则表达式(BREs,EREs,PREs)差异比较
- AWK增强的文本处理shell特征--AWK完全手册