我对ubuntu真的很陌生,我有一个小问题。
我有两个不同的命令,每个命令必须重复4次(所以总共执行了8次)
这些CommandA.sh和CommandB.sh总是位于它们的工作目录中(每个工作目录都在准备文件夹中的文件以供处理)
那么,我如何编写bash命令,从技术上说:
清洗并重复最后一个工作文件夹..。
这是“容易”完成的,还是需要大量的脚本编写?
谢谢你的帮助!
真诚的麦克斯
发布于 2020-11-18 10:48:41
#!/bin/bash
# We define an array (folders) that contains the folder names
folders[0]="first folder name"
folders[1]="second folder name"
folders[2]="third folder name"
folders[3]="fourth folder name"
for oneFolder in "${folders[@]}"; do
cd "$oneFolder" # changes to specified folder
commandA && commandB # Executes commandA and if it's successful, executes commandB
# The loop continues until the last folder in the array is reached.
done
echo如果需要四个以上的文件夹,可以按照相同的模式(folders="")在数组中添加更多的文件夹。
警告:这是一个非常简单的bash脚本,不执行错误检查。应该由您将必要的检查合并到commandA和commandB中。如果发生错误且未处理,则在数组中指定的所有文件夹中都会一次又一次地发生错误。WARNING 2:您应该在每个文件夹名中使用完整的路径,例如/home/user/ folder 1。不仅是名称,为了确保脚本将正确定位所有文件夹。
在使用脚本之前,对每个文件夹进行备份是明智的。
https://askubuntu.com/questions/1293246
复制相似问题