2016-06-20 21 views
0
@{files}= List Files In Directory  Z:\\ *base*.zip 


    ${lastModifiedFile} = Get From List ${files} 0 
    log to console  Z://${lastModifiedFile} 

    @{time1} = OperatingSystem.Get Modified Time  Z://${lastModifiedFile} 


     :FOR ${file} IN @{files} 
\  @{time1} = OperatingSystem.Get Modified Time  Z://${lastModifiedFile} 
\  @{time} = Get Modified Time ${file} 
\  Run Keyword If ${time1} < ${time} 
\  ...  ${lastModifiedFile} ${file} 
\  ... ELSE log to console ${file} 

このコードを記述すると、ディレクトリから最新のファイルを取得できます。動いていない!!ディレクトリから最新のファイル名を取得するROBOTテストケース

+1

どういう意味ですか?エラーが出ていますか?実際に何が起こっていますか? – shicky

+0

これはQ&Aサイトです。質問はどこですか?あなたが抱えている問題は、時代ではなく文字列を比較していることです。簡単な修正は、修正時刻取得(Get Modified Time)にエポックタイム(整数)の時刻を返すことです。最大の番号は、最近変更された番号になります。 – ombre42

答えて

0
@{files}= List Files In Directory  Z:\\ *base*.zip 

${lastModifiedFile} = Get From List ${files} 0 
${time1} = OperatingSystem.Get Modified Time  Z://${lastModifiedFile} epoch 

:FOR ${file} IN @{files} 
\ ${time} Get Modified Time ${file} epoch 
\ ${lastModifiedFile} Set Variable If ${time1} < ${time} ${file} ${lastModifiedfile} 
\ ${time1} Set Variable If ${time1} < ${time} ${time} ${time1} 
+0

説明を追加します。 – piyushj

+0

Z:\\内のすべてのファイルをpattern * base * .zipで取得します。最初のファイル名とその変更日を最初の 'latest'として取得します。その後、変更された時間を取得するリストを通過し、現在の最新のものよりも遅い場合は、最新のものになります。 – becixb

関連する問題