【問題】第18回ニンニク入れますかシェル芸勉強会
Sat Aug 29 13:56:20 JST 2015 (modified: Sat Dec 14 18:39:37 JST 2019)
views: 2518, keywords:CLI,Linux,UNIX/Linuxサーバ,勉強会,シェル芸,シェル芸勉強会 この記事は最終更新日が4年以上前のものです。
解答はこちら: /?p=6836 過去問はこちら: /?page_id=684
オープニングスライド(悪い冗談)
問題で使うファイル等
今回からGitHubに置くようにしました。ファイルは
https://github.com/ryuichiueda/ShellGeiData/tree/master/vol.18
にあります。
クローンは以下のようにお願いします。
git clone https://github.com/ryuichiueda/ShellGeiData.git $
環境
今回はLinuxで解答例を作りましたので、BSD系、Macな方は以下の表をご参考に・・・。
Mac,BSD系 | Linux |
---|---|
gdate | date |
gsed | sed |
tail -r | tac |
gtr | tr |
gfold | fold |
Q1
次のファイルは1列目がキー、2列目が値ですが、「オトン」と「オカン」の両方の値があるキーを探してください。
cat text
$ 001 オトン
001 オトン
001 アカン
002 オカン
003 オトン
003 ヤカン
003 オカン
004 オカン
005 オトン
005 ミカン
005 アカン
Q2
次の2つのファイルについて、aだけにあるレコード、bだけにあるレコード、両方にあるレコードを分類して、
cat a
$
谷保
鹿島田
分倍河原
川崎cat b
$
分倍河原
谷保
登戸 南多摩
次のような出力を作ってください。
a 鹿島田
a 川崎
b 登戸
b 南多摩
c 谷保
c 分倍河原
Q3
次の3つのファイルについて、それぞれ書いてある数字の合計値を求めましょう。
cat a
$ 1 2
3 4 5
cat b
$ 1 2 3
cat c
$ 7
8
9
Q4
次のデータについて、
cat cross
$ _abcdef
a_x____
b______
c______
d______
e______
f___x__
次のような出力を作ってください。
a-b
f-d
つまり、xのついている場所の縦軸と横軸の記号を出力するワンライナーを考えてください。
Q5
次のテキストから空白行の重複だけ除去してください。つまり、2行以上の空白行を1行にまとめてください。
あ
あ
い
い
う
え
お お
お お
Q6
チェスボードの画像ファイルを作ってください。ウェブサイトから画像をパクるのは最近いろいろ問題となっているのでやめましょう。以下は例です。解像度は任意で構いません。
Q7
次のファイルには1組だけ同じ文字が含まれていますが、何行目と何行目にあるでしょうか?
cat chinese_characters
$
㔀㔁㔂㔃㔄㔅㔆㔇㔈㔉㔊㔋㔌㔍㔎㔏
㔐㔑㔒㔓㔔㔕㔖㔗㔘㔙㔚㔛㔜㔝㔞㔟
㔠㔡㔢㔣㔤㔥㔦㔧㔨㔩㔪㔫㔬㔭㔮㔯
㔰㔱㔲㔳㔴㔵㔶㔷㔸㔹㔺㔻㔼㔽㔾㔿
㕀㕁㕂㕃㕄㕅㕆㕇㕈㕉㕊㕋㕌㕍㕎㕏
㕐㕑㕒㕓㕔㕕㕖㕗㕘㕙㕚㕛㕜㕝㕞㕟
㕠㕡㕢㕣㕤㕥㕦㕧㕨㕩㕪㕫㕬㕭㕮㕯
㕰㕱㕲㕳㕴㕵㕶㕷㕸㕹㕺㕻㕼㕽㕾㕿
㖀㖁㖂㖃㖄㖅㖆㖇㖈㖉㖊㖋㖌㖍㖎㖏
㖐㖑㖒㖓㖔㖕㖖㖗㖘㖙㖚㖛㖜㖝㖞㖟
㖠㖡㖢㖣㖤㖥㖦㖧㖨㖩㖪㖫㖬㖭㖮㖯
㖰㖱㖲㖳㖴㖵㖶㖷㖸㖹㖺㖻㖼㖽㖾㖿
㗀㗁㗂㗃㗄㗅㗆㗇㗈㗉㕐㗊㗋㗌㗍㗎
㗐㗑㗒㗓㗔㗕㗖㗗㗘㗙㗚㗛㗜㗝㗞㗟
㗠㗡㗢㗣㗤㗥㗦㗧㗨㗩㗪㗫㗬㗭㗮㗯 㗰㗱㗲㗳㗴㗵㗶㗷㗸㗹㗺㗻㗼㗽㗾㗿
Q8
次のファイルの中に、複数回登場する数字の並びがいくつかありますが、その中で最長のものはどれでしょうか?例えば「23」という数字の並びは4つありますが、それより長い数字の列で、2回以上登場するものが存在します。
cat number
$ 8264611130023148519839960536022802096895154738213681101003238003191122723922378922942503388843815799