getArgs はどのように機能しますか。ターミナルからテキスト ファイルを読み込もうとしています。その内容は、定義済みの関数の 1 つに送信されます。誰かがサンプルコードを投稿して、それがどのように機能するかを教えてもらえますか. ありがとう。
質問する
2924 次
2 に答える
11
getArgs
のリストを生成するIO
アクションです。String
fmap someFunction $ readFile =<< fmap head getArgs
または Applicative スタイルで:
someFunction <$> readFile =<< head <$> getArgs
于 2013-02-19T02:35:26.580 に答える
4
getArgs
コマンドライン引数のリストが表示されます ( C プログラマーが呼び出すもの、実行中のバイナリの名前は含まれません)。argv[0]
たとえば、アプリケーションを としてコンパイルし、コマンドラインでfoo
実行すると、が返されます。foo a b c
getArgs
["a", "b", "c"]
あなたの質問から、コマンドラインでファイル名を期待しているのか、それとも標準入力でデータをパイプすることを期待しているのかわかりません。
ファイル名を求めている場合は、から結果を取得してgetArgs
に渡します(または、目的に応じて、openFile
おそらくに渡します)。readFile
パイピングを行おうとしている場合はinteract
、 を参照すると、必要なことが実行される可能性があります。
于 2013-02-19T20:11:08.493 に答える