【問題と解答】第18回ニンニク入れますかシェル芸勉強会

Sat Aug 29 16:51:16 JST 2015 (modified: Sat Dec 14 18:35:47 JST 2019)
views: 948, keywords: CLI,UNIX/Linuxサーバ,勉強会,シェル芸,シェル芸勉強会

  このエントリーをはてなブックマークに追加 

問題だけのページはこちら: /?p=6877 過去問はこちら: /?page_id=684

オープニングスライド(悪い冗談)

第18回シェル芸勉強会スライド from Ryuichi Ueda

問題で使うファイル等

今回からGitHubに置くようにしました。ファイルは

https://github.com/ryuichiueda/ShellGeiData/tree/master/vol.18

にあります。

クローンは以下のようにお願いします。

環境

今回はLinuxで解答例を作りましたので、BSD系、Macな方は以下の表をご参考に・・・。

Mac,BSD系 Linux
gdate date
gsed sed
tail -r tac
gtr tr
gfold fold

Q1

次のファイルは1列目がキー、2列目が値ですが、「オトン」と「オカン」の両方の値があるキーを探してください。

解答

値がオトンとオカンのレコードを抽出してuniqで1列目が重複しているレコードを探します(解答例の出力の2列目は無視で)。

Q2

次の2つのファイルについて、aだけにあるレコード、bだけにあるレコード、両方にあるレコードを分類して、

次のような出力を作ってください。

解答

commを使ってみたかっただけです。

Q3

次の3つのファイルについて、それぞれ書いてある数字の合計値を求めましょう。

解答

どうやってファイル名と値の2列のデータにするかが鍵。

Q4

次のデータについて、

次のような出力を作ってください。

つまり、xのついている場所の縦軸と横軸の記号を出力するワンライナーを考えてください。

解答

ベタにAWKを使うか、Tukubaiを使うか。

Q5

次のテキストから空白行の重複だけ除去してください。つまり、2行以上の空白行を1行にまとめてください。

解答

文字のある行にだけ番号をつけてuniqすればよいですね。

Q6

チェスボードの画像ファイルを作ってください。ウェブサイトから画像をパクるのは最近いろいろ問題となっているのでやめましょう。以下は例です。解像度は任意で構いません。

chess

解答

PGM形式で画像を作るのが一番簡単です。

pgmが見れない。あるいは8x8ピクセルだとヤダという場合はImageMagickで変換を。

Q7

次のファイルには1組だけ同じ文字が含まれていますが、何行目と何行目にあるでしょうか?

解答

同じファイルをワンライナーで二回読み込みます。

LANG=Cをちゃんと付けないとダメなようです。

Q8

次のファイルの中に、複数回登場する数字の並びがいくつかありますが、その中で最長のものはどれでしょうか?例えば「23」という数字の並びは4つありますが、それより長い数字の列で、2回以上登場するものが存在します。

解答

どうやって数字の並びを全通り出力するかがミソです。以下の出力のように003と922が正解です。



prev:【問題】第18回ニンニク入れますかシェル芸勉強会 next:日記: 昨日のシェル芸勉強会のまとめ等





このサイトではGoogle AdSenseやその他ソーシャルボタンのためにCookieを使用しています。もし同意いただけない場合はブラウザでクッキーを無効にして閲覧をお願いします。This site uses cookies for Google AdSense and some social buttons. If you cannot accept our use of cookies, please disable cookies on your browser.