投稿

ラベル(Bash)が付いた投稿を表示しています

今日のラズパイ日記 : Cronを利用してリモートカメラや温度通知システムを作ってみるなど

以前購入したRaspberry Pi 4ですが、なにやら公式から新しいOSが登場したり(Raspberry Pi OS)、メモリが8GBのモデルが出たりと新しい動きが出ている模様。そういえばハイスペックのカメラモジュールもいくつか出てましたね。 OSに関しては名称が変わった程度のようですが、実際のところはどうなんでしょね? さて、そんな中で自分は一体何をしていたかというと、リモートから自宅のラズパイを利用する方法をあれこれと考えていました。まぁサーバーとして公開するとかどこかのレンタルサーバーと連携させるとかいろいろ方法はありそうとは思うんですが、契約が必要なものはちょっとめんどい。実際はそうした方が自由度があるんですけどね。 ということで、出来るだけいまの環境だけで出来るものをと考えていたところ、Raspberry Piで取得したデータをメールで添付する方法に行き当たりました。ただこれはシンプルそうに見えるんですが、コマンドラインから操作するものを選んだり、プロバイダなどのメールサーバーとの通信を設定したりとこれはこれでめんどい。 (たぶんやれば出来るけど、やるのがめんどくさくてやらないいつものパターン) そんな中で比較的簡単そうだったのが、オンラインストレージのDropboxにRaspberry Piで取得したデータを保存していくという方法。DropboxのAPIを利用するDropbox-Uploaderというシェルスクリプトが公開されているのでこれを利用することにしました。 (素のDropboxをインストールするという方法はめんどうそうだったのでスルー) Dropbox-Uploaderはいくつか初期設定が必要となってきますが、なんとか完了。これでコマンドラインからDropboxをある程度操作出来るようになりました。 後は、raspistillやvcgencmdといったコマンドを利用して写真やSoCの温度データを取得。これをCronで一定時間毎に実行。合わせてDropboxにそのデータを保存していきます。 SoCの温度データに関しては別に室温を示しているわけでもないので、これ自体はそれほど意味があってやってるわけでもなく。将来的に何かしらの温度センサーなど使えるようになったらいいかなと。 raspistillでの画像取得は結構役に立ってますね。空の様子を撮影し...

Bash : チルダ展開(tilde expansion)でホームディレクトリパスの指定を簡単に

初めにBashの展開について簡単に Bashでは 展開(expansion) という記法を用いることで、 複数のファイルを一括で指定 ファイル名を編集して指定 別のコマンドの出力を差し込む などといった処理が簡単に出来るようになります。 ワイルドカードを用いた記述 展開に用いられる記法はいくつか種類がありますが、よく使われるのはワイルドカード(*)を使った指定方法ですね。 例えば、 a.txt, b.txt, c.txt, 001.jpg, a002.png の5つのファイルからmvコマンドでtxtファイルだけをtextというフォルダに移動させる場合、 $ mv *.txt text と記述することが出来ます。ここではワイルドカードはパターンマッチングによりテキストファイル名に展開されます。ファイル3つだけなら全てファイル名を記述してもそう大差は無いですが、これがテキストファイル100個とか200個とかになるとワイルドカードを使うなどしないと手間がかかり過ぎてしまうでしょう。 チルダ展開とは さて今回紹介する チルダ展開 ですが、そもそも 「チルダとはなんぞや?」 という説明から始めていきましょう。 チルダとは チルダは英単語では tilde で、発音を区別するために用いられる記号。波ダッシュとも呼ばれています。そして数学やコンピュータ関係ではまた特別な意味を持った記号としても用いられます。 チルダはキーボードから入力すると「~」となります。 チルダ展開 コマンドでチルダを用いると、そのチルダはホームディレクトリのパスとして展開されます。これがチルダ展開。 例えば $ cd ~ とすると、~がホームディレクトリのパスとして展開されるのでこのcdコマンドでホームディレクトリに移動することが出来ます。チルダ展開がどう展開されているのか確かめるなら $ echo ~ とするといいでしょう。この場合は /home/foo と表示されます(fooは任意のユーザー名にでも読み替えて下さい)。 つまりは $ cd ~ $ cd /home/foo は同じことを表していることになるわけです。 チルダ1文字だけでホームディレクトリを指定出来るというのは便利です。 その他、ホームディレ...

スポンサーリンク