Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
shellのアラートあれこれ
Kenichiro MATOHARA
December 09, 2017
Technology
0
39
shellのアラートあれこれ
Kenichiro MATOHARA
December 09, 2017
Tweet
Share
More Decks by Kenichiro MATOHARA
See All by Kenichiro MATOHARA
小さなLinux互換カーネルのTilck
matoken
0
10
機械翻訳をローカルマシンで( ArgosTranslate/LibreTranslate )
matoken
0
120
OpenAIのWhisper でオフライン文字 起こし(STT)
matoken
0
81
Wikipedia を Offlineで楽しむ
matoken
0
62
Intel CPUでもAIに画像生成してもらう
matoken
0
150
AndroidスマートフォンのTermuxでモバイル回線の速度を定期的に計測
matoken
0
80
XFSのbigtimeを少し試してみた(RHEL9 & ML8.4)
matoken
0
42
ターミナルワークスペースのZellij
matoken
0
200
XFSのbigtimeを少し試してみた
matoken
0
110
Other Decks in Technology
See All in Technology
03_ユーザビリティテスト
kouzoukaikaku
0
530
MoT/コネヒト/Kanmu が語るプロダクト開発xデータ分析 - 分析から機械学習システムの開発まで一人で複数ロールを担う大変さ
masatakashiwagi
3
750
cdk deployに必要な権限ってなんだ?
kinyok
0
180
OCI技術資料 : ロード・バランサー 詳細 / Load Balancer 200
ocise
2
7.2k
WebLogic Server for OCI 概要
oracle4engineer
PRO
3
880
開発者と協働できるメトリクスダッシュボードを作ろう!/SRE Lounge 2023
lmi
3
500
re:Inventで発表があったIoT事例の紹介と考察
kizawa2020
0
190
JAWS-UG 横浜 #54 資料
takakuni
0
210
Cloudflare Workersで動くOG画像生成器
aiji42
1
500
CUEとKubernetesカスタムオペレータを用いた新しいネットワークコントローラをつくってみた
hrk091
1
290
証明書って何だっけ? 〜AWSの中間CA移行に備える〜
minorun365
3
2.1k
PHPのimmutable arrayとは
hnw
1
160
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
657
120k
Designing with Data
zakiwarfel
91
4.2k
Making Projects Easy
brettharned
102
4.8k
Infographics Made Easy
chrislema
235
17k
5 minutes of I Can Smell Your CMS
philhawksworth
198
18k
Designing Experiences People Love
moore
130
22k
Debugging Ruby Performance
tmm1
67
11k
Clear Off the Table
cherdarchuk
79
290k
Bootstrapping a Software Product
garrettdimon
299
110k
The Pragmatic Product Professional
lauravandoore
21
3.4k
Designing on Purpose - Digital PM Summit 2013
jponch
108
5.9k
Build The Right Thing And Hit Your Dates
maggiecrowley
22
1.4k
Transcript
None
matoken? KenichiroMATOHARA( @matoken ) http://matoken.org 興味 PC-UNIX/OSS, OpenStreetMap, 電⼦⼯作, ⾃転⾞……
altanativeが好き,多様性は正義!
⼤隅から来ました
最近 ⾃宅⽤にAPを購⼊ BAFFALO WZR-HP-AG H ハードオフ⿅屋店にて本体のみのジャンク218円 よくあるセンターポジティブの12V A . mmで動いた
. GHz bgn Mb → . + GHz abgn Mbに! KRACKsとかの対応は多分出ないくらいの古さ OpenWrtとかLEDEとかいけるぽい
shellで時間の掛かる処 理が終わったら教えて欲 しい shell bell 同じホストの別端末に通知 eject! desktop通知 他の端末に通知 いろんなもので通知
bell 昔から使われていて多分⼀番オーソドックスな⽅法 処理の後ろに付けて終わったらbellが鳴る readlineの機能 ※^GはC-v C-gで⼊⼒ $ 時間の掛かる処理 ; echo
-en "\007" $ 時間の掛かる処理 ; echo -en ^G $ 時間の掛かる処理 ; echo -en "\a"
鳴らない時(inpurcの bell-style) set bell-style none になっているかも /etc/inputrc, ~/.inputrc で設定 set
bell-style audible(音を鳴らす) set bell-style visible(画面を点滅させる)
鳴らない時(端末設定) 端末で無効になっているかも
鳴らない時(スピーカー が無効) /etc/modprobe.d/blacklist.conf に⼊っていることが lsmod |grep pcspkr で確認 無かったら sudo
modprobe pcspkr とかして確認 当たりならblacklistから消したりする
同じホストの別端末に通 知 鳴らしたい端末デバイスに投げる 端末デバイス名は該当端末で tty コマンドで確認できる $ tty /dev/pts/7 $
echo -en ^G > /dev/pts/7 $ echo -en Done.^G^H^H^H^H^H > /dev/pts/7
適当な効果⾳を鳴らす 適当なプレイヤーで好きな⾳を鳴らす aplay hoge.wav 何なら動画とかでも
CDドライブを開閉する ウィーン! $ while true ; do eject -T;sleep 1;
done $ while true ; do eject -T;sleep 1; done Ejectコマンドユーザー会
デスクトップ通知 notify-sendとかgol(Glowl for Linux)とかを使う $ notify-send -t 0 Done.
他の端末に通知(スマホ とか別マシンとか) IFTTTのWebhook利⽤ IFTTTでWebhook発の適当なレシピを作って以下のようなscriptを⽤意して呼ぶ #!/bin/sh if [ $1 ]; then
msg=$1 else msg="Done." fi curl -X POST -H "Content-Type: application/json" -d "{\"value1\":\"$msg\"}" https://maker.ifttt.com/trigger/shell_alart/with/key/{{token}} > /dev/null 2>&1
pushbulletに投げた時
IFTTT いろんなサービスと連携できるので⾊んな所に通知を遅れる SMS / eMail / スマートスピーカー…… Philips Hueで部屋の電気の⾊変えたり(エラー時は⾚にしたり?),テレビ消したり…… (IFTTTが乗っ取られたら他のサービスもやられるので注意)
https://ifttt.com/search/services
余録
処理を⾛らせてからやっぱり終了時に教えて欲し いなと⾔う時(きっともっといい⽅法ある) 中断したり別端末からPID確認してループを回す $ sleep 100 ^Z [1]+ 停止 sleep
100 bg [1]+ sleep 100 & $ ps PID TTY TIME CMD 13118 pts/7 00:00:00 bash 16758 pts/7 00:00:00 sleep 16761 pts/7 00:00:00 ps $ while ps 16758 ; do sleep 5; done; echo "done^G" PID TTY STAT TIME COMMAND 16758 pts/7 S 0:00 sleep 100 PID TTY STAT TIME COMMAND 16758 pts/7 S 0:00 sleep 100 [1]+ 終了 sleep 100 PID TTY STAT TIME COMMAND done
終了コードで処理を変える 正常時にはbell 回エラー時には2回 $ 処理 && echo ^G || (echo
^G;sleep 1;echo ^G)
その他 tput bel TTS(OpenJTalk / rospeex / gsay は死んだぽい)
発表後 TTSはMiniDebConfJapan で発表のあった徵⾳梅林も使えるのでは?
license等 Copyright: Kenichiro MATOHARA <
[email protected]
> License : https://creativecommons.org/licenses/by-nc-sa/ . /(CC
BY-NC-SA 4.0) source : https://bitbucket.org/matoken/kagolug- . /src - - (Sat) ⿅児島Linux勉強会 2017.12にて発表