マイブーム

Linux, perl,shellscript,DIYなどがマイブーム(不定期)

シェル&Perl入門 ‐bash/grep/sed/awk/Perl‐

2024-06-04 18:39:39 | 日記

30cmx20cm(目見当)ぐらいある巨大本。268p、初版2001年…(汗

grepとかsedawkについて知りたいと思い、300円くらいで購入。

情報科の学生用に「広く浅く」をモットーに作られた往年の教材のようです。

内容が古かったり、所々に誤植もあったりしますが、プログラミングを趣味でやってる門外漢には分かりやすく、雑多な知識はあったので、一気読み出来ました。(ちょっと分かった気分。)

sedとかawkとか、時々目にするけど、イマイチよく分かっていなくて。シェルスクリプトの中とかで実際に使って覚えて行くといい感じかもですね。

この本だけでは本当に基本的なコマンド的な使い方しか分からないので、詳しくはオライリーの本とかかな。


..と...の違い

2024-06-03 23:34:46 | 日記

マニアックな内容ですw。

死語のプログラミング言語であるperlの範囲演算子..(点々)と ...(点々点)の違いについてです。

点2つ●●(..だと見づらいので拡大)だと、(1●●5)は(1,2,3,4,5)の事なのですが、じゃあ点3つの●●●って何?

perlのマニュアルを読んでもよく分からず…。ゴニョゴニョやって、やっと分かりました!

点2つで表されるこの範囲演算子を使って、if (/最初こんなの/●●/最後こんなの/)とできるそうなのです。

例えば if (/hoge1/●●/hoge2/)とすると、hoge1-honyarara-hoge2、のような文字列にマッチします。

しかし、この時●●ではなく●●●を使えば、この時だけhoge2を見なかった事にしてくれるらしいです(●●●なだけに…)。今回だけは見逃したら〜的な感じで、次のhoge2が出てくるまで探すようです!

(例えば、hoge1-honyarara-hoge2 honyahonya gonyogonyo hoge2 のような文字列にマッチします!)

マニアックですみません!!


神のシェルスクリプト

2024-05-12 22:32:21 | 日記

自作したアスキーコード表

マニアックですが、近頃はシェルスクリプトにハマっています。面倒いですが、ターミナルで使えるコマンドがプログラムのパーツになるので、覚えればいろいろ重宝しそうです。

上記のようなアスキーコード表を出力するシェルスクリプトを作ってみましたが、プロは次のように1行のコマンドで出力するそうで驚きです。

$ printf "$(printf '\\%o' {0..127})" | od -t a

素人なので長くなりますが、下記のシェルスクリプトを試行錯誤しながら自作。

 アスキーコード表表示シェルスクリプト

3日後には、作った本人でも内容が分からなくなるので、コメント多めがオススメだそうです。

ちなみに、エディタは「神にもなれる」というemacsを使っています。エディタ以外の機能もついているので、趣味プログラマにはオススメ。双璧を成すviというエディタは「魔法使いにもなれる」という本業プログラマ用だそうです。(※個人的見解)


物置の戸車DIY

2024-04-28 17:06:59 | 日記

物置の戸が開かない!…100人乗っても大丈夫なイナバの物置、の戸車がイカれてました。白い樹脂ローラー部分が無残な状態に。と言っても、古い物置なので当然なのです。

ネットで探すと、交換用戸車が300円くらいであったのですが、送料が700円という…。1000円出せば良いのですが、ここはDIYで。

イナバ物置用の戸車

ホームセンターで探すと、白い樹脂ローラーの大きさがほぼ同じ、ホニャララ用の戸車(200円くらい)を発見。もちろん、戸車の金属フレームの形状は全く違うので、ローラー部分だけ流用します。

ホニャララ用の戸車

イカれてしまったローラーと新しいローラーそれぞれを止めているカシメピンを電動グラインダーで両端とも削って強引に取り外し、新しいローラーを、ボルト・ナット・ワッシャーでイナバの戸車のフレームに固定。

そのままではボルトとナットが出っ張って、戸の溝に入らないので、再びグラインダーでボルトの頭とナットを半分くらいになるまで削ってようやく完成。(ふぅ〜)物置の戸が復活しました。

(…戸車のフレームを小さいマイナスドライバーでこじった時に、そのマイナスドライバーで手をぶっ刺しましたが傷は浅かったです…。グラインダーも危険です。お気をつけ下さい…。)


Arduinoスターターキットの罠

2024-04-26 19:20:10 | 日記

聞いてはいましたが、やっぱりスターターキット中に不動パーツがありました。

先日の防犯WEBカメラをリモコンでオン・オフできたらと思い、赤外線受信モジュールの順番を繰り上げてArduinoに繋げてテストしてみましたが、どうやっても反応しない。シーーーーーーーーン。

赤外線受信モジュールは単品で入手するしか無い。

私が購入した中国産Arduinoスターターキットの取説はダウンロードして入手するのですが、ファイルが2018年から更新されておらず放置状態。不動パーツがあるのも無理もない。Arduino自体、2005年から始まっているので遅きに失してる訳ですが。

不精者の私はスターターキットの購入から始めてしまいましたが、まずは無料ソフトであるArduinoのIDE(開発環境)をダウンロードし、IDE(開発環境)のメニューから辿れる最新のサンプルプログラムを物色しながら、本体や必要なパーツを入手するという手もありますね。古いサンプルプログラムだともうサポートされてないし、ライブラリのバージョン選びとか面倒。

ちなみに画像では、Arduino本体が木材の中に収まっていますが、固定したかったので2×4の端材をちょっと掘って自作しました。

不動の赤外線モジュール