linux - 如何制作一个脚本来运行另一个脚本

标签 linux shell move

我想用

中的所有文件运行 obj2opengl.pl

/Users/KanZ/Desktop/Project/Test/Model/Object

这是名称 A001.obj A002.obj ... 运行脚本后,我将得到 A001.h A002.h ... 我想将这些文件 move 到

/Users/KanZ/Desktop/Project/Test/Model/Header

我如何修改下面的代码 *问题在 A${i}.obj 和 A${i}.h

cd /Users/KanZ/Desktop/Project/Test/Model/Object
start=1
n=$(find . -name "*.obj" | wc -l)
end=$(($n));
for((i=$start;i<=$end;i++))
do
./obj2opengl.pl "A${i}.obj"
mv "A${i}.h" /Users/KanZ/Desktop/Project/Test/Model/Header
done

如果我通过使用 if 语句调整我的代码,我该如何修复此代码以获得正确的语法例如:

cd /Users/KanZ/Desktop/Project/Test/Model/Object
start=1
a=0
b=0
c=1
n=$(find . -name "*.obj" | wc -l)
end=$(($n));
for((i=$start;i<=$end;i++))
do
   ./obj2opengl.pl "A${a}${b}${c}.obj"
   mv "A${i}.h" /Users/KanZ/Desktop/Project/Test/Model/Header
   c++
if[$c > 9] then
   b++
   c=0
fi
if[$b>9] then
   a++
   b=0
   c=0
fi
done

最佳答案

cd /Users/KanZ/Desktop/Project/Test/Model/Object

find . -name "A*.obj" -exec obj2opengl.pl {} \;
find . -name "A*.h" -exec mv {} /Users/KanZ/Desktop/Project/Test/Model/Header \;

关于linux - 如何制作一个脚本来运行另一个脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14151855/

相关文章:

linux - Bash shell 'if' 语句比较不同命令的输出

c++ - 使用删除-删除范例将元素从一个 vector move 到另一个 vector

vim - 在 Vim 中向左或向右 move 光标时防止打开光标下的折叠

linux - shell : 向命令传递了多少个参数

linux - 如何在字符串连接中包含破折号(或其他特殊字符)?

Python 3.7 及以上版本 : how to determine Linux distribution?

c - fopen() 在 win32 上的性能

bash - 如何每次使用新输出创建新文件

c++ - 如何区分 "move"和 "const ref&"的重载函数?

linux - getopt_long 没有按预期工作