【問題と解答】第27回sedこわいシェル芸勉強会

Sat Feb 11 16:13:15 JST 2017 (modified: Sat Sep 30 16:15:34 JST 2017)
views: 843, keywords: コマンド,sed,勉強会,シェル芸,シェル芸勉強会

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

問題のみのページはこちら。

問題で使うファイル等

GitHubにあります。ファイルは

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

にあります。

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

イントロ

環境

対象とするsedはGNU sedだけに絞っています。解答例はUbuntu Linux 16.04 で作成。Macの場合はcoreutilsをインストールの上、gsedをつかいましょう。BSD系の人は玄人なので各自対応のこと。

Q1

次のechoの出力について、偶数番目の文字だけ大文字にしてください。できたら、奇数番目の文字だけ大文字にしてください。

解答

Q2

seq 1 100から始めてsedだけでFizzBuzzをやってみましょう。

解答

Q3

次の出力について、3行目を7行目の下に移動してください。

解答

hで3行目をホールドスペースに突っ込み、Gでパターンスペースに戻します。

Q4

次のコードのmainとahoの位置を入れ替えてください。

解答

mainの部分をホールドスペースに入れる→消す→ファイルの一番後ろでホールドスペースを吐き出すという流れになります。

Q5

seq 1 10 | から始めて次のような出力を作ってください。

2
1
4
3
6
5
8
7
10
9

解答

Q6

echo 1から始めて次のような出力を作ってください。

解答

ラベルを使います。

Q7

aというファイルをtouch等で作り、次の縛りでa1, a2, a3, ..., a10というファイルをaからコピーして作ってください。縛り1と縛り2を独立した別々の問題として解き、その後縛り1,2を両方満たす解を考えてみましょう。

  • 縛り1: 使うコマンドはseq、cp、sedだけ
  • 縛り2: ワンライナー中で数字を使わない

解答

Q8

echo 1 | から始めて、あとはsedだけで次のような出力を得てください。

解答



prev:【問題のみ】第27回sedこわいシェル芸勉強会 next:jus共催第27回シェル芸勉強会のリンク集





このサイトでは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.