2015-10-07 33 views
0

我在下面的shell腳本(sh)下面的行需要寫入相當於windows bat文件。任何身體上的幫助shell腳本步驟相當於windows bat scritp問題

**shell script:** 

cd $AUTOMATEDTESTHTTPDIR/../abc/Input 
for i in `ls -d *` 
do 
    cd $i 
    cp * ../../def/Unidentified/Requests 
    cd .. 
done 

cd $AUTOMATEDTESTHTTPDIR/../abc/Output 

for i in `ls -d *` 
do 
    cd $i 
    cp * ../../def/Unidentified/Responses 
    cd .. 
done 

cd $AUTOMATEDTESTHTTPDIR/../def/Deliver 
for d in test1\ 
     test2\ 
     test3\ 
    do 
    mkdir $d 
    for e in Requests \ 
      Responses 
    do 
    mkdir $d/$e 
    mv Unidentified/$e/*$d* $d/$e 
    done 
done 

如何在windows bat中寫上述行。

回答

0

這是一個粗糙的重擊它。這是沒有經過測試的,但它包含了你需要做的大部分工作。有關循環的更多信息,請在cmd shell提示符處使用FOR /?

CD %AUTOMATEDTESTHTTPDIR%\..\abc\Input 
FOR /F "usebackq tokens=*" %%i IN (`dir /ad *`) DO (
    CD "%%i" 
    COPY * ..\..\dev\Unidentified\Requests 
    CD .. 
) 

CD %AUTOMATEDTESTHTTPDIR%\..\abc\Output 
FOR /F "usebackq tokens=*" %%i IN (`dir /ad *`) DO (
    CD "%%i" 
    COPY * ..\..\dev\Unidentified\Requests 
    CD .. 
) 

CD %AUTOMATEDTESTHTTPDIR%\..\def\Deliver 
FOR %%d IN (test1 test2 test3) DO (
    MKDIR "%%d" 
    FOR %%e IN (Requests Responses) DO (
     MKDIR "%%d\%%e" 
     MOVE "Unidentified\%%e\*%%d*" "%%d\%%e" 
    ) 
)