【問題のみ】第20回記念、年末年始の浮ついた気分大粉砕シェル芸勉強会
Sat Dec 26 13:50:09 JST 2015 (modified: Sat Sep 30 16:15:34 JST 2017)
views: 3051, keywords:コマンド,CLI,USP友の会,勉強会,シェル芸 この記事は最終更新日が8年以上前のものです。
イントロ
問題で使うファイル等
前回からGitHubに置くようにしました。ファイルは
https://github.com/ryuichiueda/ShellGeiData/tree/master/vol.20
にあります。
クローンは以下のようにお願いします。
$ 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
リポジトリ内のvol.20/Q1ディレクトリには次のように数字が書いてあるファイルが4つ入っています。
$ ls
file_A-1 file_A-2 file_B-1 file_B-2
$ head -n 2 *
==> file_A-1 <==
1
31351
==> file_A-2 <==
11
35
==> file_B-1 <==
-32
12
==> file_B-2 <==
912
3file_A-のグループ、file_B-のグループからそれぞれ最大の数を探してください。他にfile_C-、file_D-、・・・とグループがたくさんあると想定して、1回のワンライナーで両方探すこととします。
Q2
アンサイクロぺディアのシェル芸のページから、「カースト最上位者が日常的に書く、素数を出力するワンライナー」のコードを取得して実行してください。
Q3
次のファイルについて、奇数を1列目、偶数を2列目に振り分けて、奇数の列を昇順、偶数の列を降順にソートしてください。
$ cat Q3
1
4
2
9
5
8つまりこうしてください。
1 8
5 4
9 2Q4
今、ログインしているサーバについて、自分の今使っているリモート端末以外の端末を抹殺してください。rootになっても構いません。
Q5
任意の二つの自然数をechoして最大公約数を求めましょう。
Q6
ファイルQ6の中の人の名前について、誰が1列目と2列目の何番めに記述されているかを提示してください。
###スペースは全角###
$ cat Q6
山田 上田 吉田 武田
吉田 武田 上田 山田解答例は次のようなものです。
吉田 3 1
山田 1 4
上田 2 3
武田 4 2Q7
一部分に「魚」を持つ漢字をなるべくたくさん列挙してみてください。方法はお任せします。
Q8
次の漢数字をアラビア数字に変換しましょう。
$ cat Q8
五千七百三十五
四千三
四十五
九万六千二百三十三
十一
百十二宣伝
[amazonjs asin="4774173444" locale="JP" title="シェルプログラミング実用テクニック (Software Design plus)"]
ノート
Tweet