Skip to Content
Rustの練習帳 ―コマンドラインツールの作成を通してRustを学ぶ
book

Rustの練習帳 ―コマンドラインツールの作成を通してRustを学ぶ

by Ken Youens-Clark, 中山 光樹
January 2024
Intermediate to advanced
472 pages
5h 56m
Japanese
O'Reilly Japan, Inc.
Content preview from Rustの練習帳 ―コマンドラインツールの作成を通してRustを学ぶ

5章wcコマンド

ダートバイク万歳 / 哲学者ダートバイク / 我々が集まり静寂が訪れた /

その言葉(word)を目にした後、すぐに出発した

—— They Might Be Giants, "Dirt Bike" (1994)

本章では、AT&T Unixのバージョン1が初出の由緒あるwc(word count)コマンドを作成します。このコマンドは、標準入力や1つ以上のファイルに含まれる行数、単語数、バイト数を数えて表示できます。wcは、ほかのプロセスから返された結果の行数を数えるためによく使われています。

本章では、次の内容を学びます。

  • Iterator::all関数の使い方
  • テスト用モジュールの作り方
  • テスト用のファイルハンドルを用意する方法
  • 条件付きで値を整形して表示する方法
  • テスト用モジュールを条件付きでコンパイルする方法
  • 行を単語、バイト、文字に分割する方法
  • Iterator::collectを使ってイテレータをベクタにする方法

5.1 wcの動作

まず、何をテストすべきかを知るために、wcの動作を示します。以下は、BSD版のwcに関するマニュアルページからの抜粋で、今回のプログラムで実装する機能について説明しています。

WC(1) BSD General Commands Manual WC(1) NAME wc -- word, line, character, and byte count SYNOPSIS wc [-clmw] [file ...] DESCRIPTION The wc utility displays the number of lines, words, and bytes contained in each input file, ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

プログラミングC# 第8版

プログラミングC# 第8版

Ian Griffiths, 木下 哲也, 鈴木 幸敏
進化的アーキテクチャ ―絶え間ない変化を支える

進化的アーキテクチャ ―絶え間ない変化を支える

Neal Ford, Rebecca Parsons, Patrick Kua, 島田 浩二

Publisher Resources

ISBN: 9784814400584Publisher Website