import System.Cmd import System.Environment import System.FilePath import System.Exit import System.Directory import Data.List import Control.Monad main = do args <- getArgs dir <- getCurrentDirectory contents <- getDirectoryContents (dir "output") if not $ null args then mapM copy [ "output" file | file <- contents, ".html" `isSuffixOf` file, takeBaseName file `elem` args ] else mapM copy [ "output" file | file <- contents, ".html" `isSuffixOf` file ] copy file = do let new = "tests" takeFileName file <.> ".ref" print file print new copyFile file ("tests" takeFileName file <.> ".ref")