2012-09-20 312 views
0

我写了一个小的批处理脚本,它从一个文件夹中复制文件并以10秒的延迟粘贴到其他文件夹中。我想将它转换为shell脚本,但没有办法做到这一点。 请帮帮我。以下是我使用批处理脚本:批处理脚本到Shell脚本

@echo off & setLocal EnableDELAYedExpansion 

pushd "C:\Users\abc\Desktop\Test" 
for /f "tokens=*" %%a in ('dir /b/a-d "leaderboard*.txt"') do (
copy "%%a" "C:\Users\abc\Desktop\Test\final\leaderboard.txt" 
timeout 10 
) 
popd 

回答

1

设置sourcedir和TARGETDIR到你想要的(不是根据你的代码复制始终在同一个文件leaderboard.txt,如果你想保持原来的名字只是删除“leaderboard.txt”,只保留“$ TARGETDIR”

sourcedir=<SOURCEDIR> 
targetdir=<TARGETDIR> 

for a in "$sourcedir"/leaderboard*.txt; do 
    cp "$a" "$targetdir"/leaderboard.txt 
    sleep 10 
done 

注意:如果你有想要复制

+0

感谢很多的文件的名称空间该解决方案不起作用....它的工作...非常感谢..这是很好的帮助。 – Vaibhav

+0

这应该工作正常对于带空格的文件名,只要引用'$ a','$ sourcedir'和'$ targetdir'。分词发生在路径名扩展之前。 – chepner