你好,我不太熟悉Bash,所以遇到了一些问题:
我的目标是在一个文件夹中查找特定的文件,如果找到,则生成一些具有相同文件名但不同扩展名的其他文件。
类似于以下内容:
For Files-that-are-called-"SysBackup*.Now"
do
NewFileName = ChangeFileExt(FoundFilename),BK
GenerateNewfile(NewFileName)
done
当然,上面的代码只是虚拟的,我不会用我写过但无法工作的代码来烦扰你 :-)
所以目标应该是:
如果文件夹中包含Sysbackup123.now和Sysbackup666.now,则最终会得到文件Sysbackup123.bk和Sysbackup666.bk。
感谢您的帮助。
迈克尔
a
。因此,你需要在touch
命令前加上一个测试,比如[ -e $F ] &&
,甚至更具体一些的[ -f $F ] &&
。请参考下面的答案中的示例。 - Stephan202touch
命令之前添加了对文件的检查。(我最初确实有那行代码,但后来把它删掉了!唉!) - Stephen Darlington