$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
シェル芸に目覚める前と後
Search
sickleaf
June 26, 2021
Technology
0
57
シェル芸に目覚める前と後
第54回シェル芸勉強会LT
sickleaf
June 26, 2021
Tweet
Share
More Decks by sickleaf
See All by sickleaf
20240512ジャンル指定クイズ
sickleaf
0
38
「○○するシェル芸ちゃん」の紹介
sickleaf
0
150
手順メモ(circle.ms、C97申し込み)
sickleaf
0
550
bashcms本で手を動かしてみた
sickleaf
0
890
技術書典4新刊宣伝LT_radiberry pi!
sickleaf
0
220
Other Decks in Technology
See All in Technology
Database イノベーショントークを振り返る/reinvent-2025-database-innovation-talk-recap
emiki
0
220
GitHub Copilotを使いこなす 実例に学ぶAIコーディング活用術
74th
3
3.4k
AIエージェント開発と活用を加速するワークフロー自動生成への挑戦
shibuiwilliam
2
110
AI時代の新規LLMプロダクト開発: Findy Insightsを3ヶ月で立ち上げた舞台裏と振り返り
dakuon
0
190
re:Invent2025 3つの Frontier Agents を紹介 / introducing-3-frontier-agents
tomoki10
0
230
mairuでつくるクレデンシャルレス開発環境 / Credential-less development environment using Mailru
mirakui
5
540
Kiro Autonomous AgentとKiro Powers の紹介 / kiro-autonomous-agent-and-powers
tomoki10
0
530
Power of Kiro : あなたの㌔はパワステ搭載ですか?
r3_yamauchi
PRO
0
180
re:Inventで気になったサービスを10分でいけるところまでお話しします
yama3133
1
120
ディメンショナルモデリングを支えるData Vaultについて
10xinc
1
100
今からでも間に合う!速習Devin入門とその活用方法
ismk
1
750
多様なデジタルアイデンティティを攻撃からどうやって守るのか / 20251212
ayokura
0
480
Featured
See All Featured
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
The Cost Of JavaScript in 2023
addyosmani
55
9.4k
A better future with KSS
kneath
240
18k
GitHub's CSS Performance
jonrohan
1032
470k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
730
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
Bash Introduction
62gerente
615
210k
How STYLIGHT went responsive
nonsquared
100
6k
Become a Pro
speakerdeck
PRO
31
5.7k
For a Future-Friendly Web
brad_frost
180
10k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Transcript
シェル芸に目覚める前と後 ~raspberry piの環境構築にシェル芸を突っ込む~ 第54回シェル芸勉強会 LT 病葉(わくらば) @sickleaf3 1
もくじ ・何をした話? ・シェル芸に目覚める前/後の比較 ・実例(シェル芸の投入パターン) ・実機デモ ・最後に 2
何をした話? ・仕事はWordとExcel作業が中心、家ではLinuxを使ってラジオ環境の整備 ・ラジオ好きが高じて技術書を頒布/出版 ・初版執筆後に知ったシェル芸で培った知見を、今回の改版で出来る限り突っ込んだ 3
本の改版にシェル芸で得た知見を突っ込んだ話 シェル芸に触れた時期 大体2019年頃 2019年2月開催、「光明節シェル芸勉強会」の金スロット問題が強烈に印象に残ってい る 4
本の改版にシェル芸で得た知見を突っ込んだ話 どんな本? raspberry piでラジオ/音声ファイルを聴く環境を作るための構築手順をまとめた本 初版でもシェルスクリプトは使っていたが、シェル芸の観点では大きな差異 あり 5
シェル芸に目覚める前/後の比較 書籍の構成/シェル芸が占める割合(初版) 6
シェル芸に目覚める前/後の比較 書籍の構成/シェル芸が占める割合(第2版) 7
システム構成図 構築完了時のシステムイメージは以下の通り CUI上でのシェルスクリプト実行でも動作可能だが、より快適に利用するためにブラウ ザ画面を提供する(デモ動作) システムイメージ 8
シェル芸の投入パターン 既存の手順や新規手順追加にあたりシェル芸を投入した理由は、概ね以下の3パター ンのいずれか 1. 構築手順の設定値を確実に入力するため 2. テキストエディタの利用を回避するため 3. シェルスクリプトへの組み込み 9
シェル芸の投入パターン 1.構築手順の設定値を確実に入力するため 通常は usermod -G の後に、設定したいグループをカンマ区切りで空白を入れずに列挙 →ユーザを新規作成した後に、既存ユーザに準じた設定を行う場合は利用するべき //新規追加ユーザ(radipi)の所属グループ設定 sudo adduser
radipi groups pi | cut -d: -f2 | sed "s/ /,/g; s/^.//g" # piユーザが所属するグループを表示。 # pi,adm,dialout,.....となることを確認 sudo usermod -G $(groups pi | cut -d: -f2 | sed "s/ /,/g; s/^.//g") radipi # 矢印の↑を押して前回コマンドを再利用し、piユーザが所属するグループをradipiユーザに設定 10
シェル芸の投入パターン 2.テキストエディタの利用を回避するため 最近のツール(イメージ書き込み専用ツール、初期設定ウィザードなど)の提供によ り、Linux/Unix特有のエディタ操作が無くとも利用可能に →ターミナルでのコマンド実行を限度とした場合、必然的にシェル芸が登場 //SSH有効化(ポートは固有番号に変更) sudo sed -i 's/#Port
22/Port 23456/' /etc/ssh/sshd_config //cronログ有効化 sudo sed -i "/#cron/s;#;;g" /etc/rsyslog.conf //赤外線リモコンを動かす時の設定ファイル修正 sudo sed -i '$a dtoverlay=gpio-ir,gpio_pin=24' /boot/config.txt # config.txtを上書き、GPIO24を有効化 sudo sed -i '/driver/s;devinput;default;g' /etc/lirc/lirc_options.conf sudo sed -i '/device/s;auto;/dev/lirc0;g' /etc/lirc/lirc_options.conf # lirc_options.confを上書き 11
シェル芸の投入パターン 3.シェルスクリプトへの組み込み 音声再生・制御には基本的にシェルスクリプト経由で行うため、随所にシェル芸が登 場 12
実機デモ 画面イメージ 13
最後に 14