X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=utils%2Fpwd%2Fpwd.hs;h=45a2d462703b7e80237c863c2b81c05e84f13464;hb=ee69a45c027e2a9fefd9a97bfd64e78b49d0ecbe;hp=264cc982e9990703c37f3e8755e989215739e30e;hpb=068bf75eeee553c7f2cb06b8d84bdff58677c319;p=ghc-hetmet.git diff --git a/utils/pwd/pwd.hs b/utils/pwd/pwd.hs index 264cc98..45a2d46 100644 --- a/utils/pwd/pwd.hs +++ b/utils/pwd/pwd.hs @@ -3,15 +3,21 @@ module Main where import System.Directory import System.Environment +import System.Exit +import System.IO main :: IO () -main = do args <- getArgs - let escape = case args of - ["quadruple-backslash"] -> escape_quadruple_backslash - ["forwardslash"] -> escape_forwardslash - _ -> error ("pwd: Bad args: " ++ show args) - d <- getCurrentDirectory - putStr $ concatMap escape d +main = do + args <- getArgs + escape <- case args of + ["quadruple-backslash"] -> return escape_quadruple_backslash + ["forwardslash"] -> return escape_forwardslash + _ -> do hPutStrLn stderr ("Bad args: " ++ show args) + hPutStrLn stderr + "Usage: pwd {forwardslash|quadruple-backslash}" + exitFailure + d <- getCurrentDirectory + putStr $ concatMap escape d -- In prog006 we have to escape \ twice, once to get through sed and -- again to get through parsing pkg.conf