シェルスクリプトマガジン

test

シェルスクリプトの書き方入門(Vol.66記載)

投稿日:2020.05.25 | カテゴリー: コード

著者:大津 真

本連載ではシェルスクリプトの書き方をやさしく紹介します。対象とするシェルは、多くのLinuxディストリビューションが標準シェルとして採用する「Bash」です。第2回では、変数の概要と、シェルスクリプト内でコマンドライン引数を扱う方法について解説します。

シェルスクリプトマガジン Vol.66は以下のリンク先でご購入できます。

図4 シェルスクリプト「 permtest1.sh 」の内容

図5 シェルスクリプト「 colon_to_comma.sh 」の内容

図6 加工対象のファイル「 customer.txt 」の内容

シェルスクリプトマガジンvol.66 Web掲載記事まとめ

投稿日:2020.05.25 | カテゴリー: コード

004 レポート Linuxの新版「Ubuntu 20.04 LTS」リリース
005 レポート VS Codeライクな「Eclipse Theia」登場
006 NEWS FLASH
008 特集1 1000円から始めるIoT/麻生二郎 コード掲載
023 Hello Nogyo!
026 特集2 OneDriveを有効活用しよう/三沢友治
042 特別企画 Microsoft Power Platform(前編)/清水優吾
050 ラズパイセンサーボードで学ぶ 電子回路の制御/米田聡 コード掲載
054 レッドハットのプロダクト/平田千浩 コード掲載
056 バーティカルバーの極意/飯尾淳 コード掲載
062 μ(マイクロ)/桑原滝弥、イケヤシロウ
064 Webアプリの正しい作り方/しょっさん コード掲載
070 円滑コミュニケーションが世界を救う!/濱口誠一
072 MySQL Shellを使おう/梶山隆輔
079 中小企業手作りIT化奮戦記/菅雄一
084 法林浩之のFIGHTING TALKS/法林浩之
086 香川大学SLPからお届け!/檜垣龍德 コード掲載
092 ユニケージ開発手法入門/石崎博之、掛本健一 コード掲載
098 シェルスクリプトの書き方入門/大津真 コード掲載
104 Techパズル/gori.sh
106 コラム「コロナ禍の中で」/シェル魔人

特集1 1000円から始めるIoT(Vol.66記載)

投稿日:2020.05.25 | カテゴリー: コード

著者:麻生 二郎

センサーをつないで状態を監視するだけのIoT(モノのインターネット)を
始めるには、小型コンピュータボード「Raspberry Pi」は高機能かつ高価で
す。そこで1000円以下で購入できるマイコンボード「ESP32 ESP-32S」を使
って、簡単なプログラムと共にI oTを始めてみましょう。

シェルスクリプトマガジン Vol.66は以下のリンク先でご購入できます。

Part2 ESP32で電子回路を制御する

図2 ネットワーク接続プログラム(wlan.py)

図3 簡易サーバーを立ち上げるプログラム(webserver_test.py)

図12 Webブラウザから湿温度・気圧を取得するプログラム(web_bme280.py)

図16 明るさによってライトの点灯を促すプログラム(web_cds.py)

センサーボードで学ぶ電子回路の制御(Vol.66掲載)

投稿日:2020.05.25 | カテゴリー: コード

著者:米田 聡

シェルスクリプトマガジンでは、小型コンピュータボード「Raspberry Pi」(ラズパイ)向けのセンサー搭載拡張ボード「ラズパイセンサーボード」を制作しました。第13 回では、同ボードに搭載された湿温度・気圧センサー「BME280」から取得したデータをグラフ化する準備をします。

シェルスクリプトマガジン Vol.66は以下のリンク先でご購入できます。

図2 PythonからSQLiteを操作するサンプルプログラム(test_sqlite3.py)

図3 温度、湿度、気圧のデータをSQLiteに保存するプログラム(storebme.py)

レッドハットのプロダクト(Vol.66記載)

投稿日:2020.05.25 | カテゴリー: コード

著者:平田 千浩

「Red Hat Ansible Automation Platform」は、OSS のAnsibleとAWXを基とした企業向け自動化の基盤です。RHELを含むさまざまなOS、さまざまなアプリケーション、さまざまな機器に対応し、局所的な作業からバージョン管理システムと連携した構成管理までを自動化できます。

シェルスクリプトマガジン Vol.66は以下のリンク先でご購入できます。

図2 インベントリファイルの例(hosts)

図3 Cisco IOS向けの簡単なPlaybookの例(snmp.yml)

図6 Arista EOSを追加したインベントリファイル例(hosts)

図7 Arista EOSのコンフィグをバックアップするPlaybookの例(eos_backup.yml)

図10 CISCO IOSのコンフィグをバックアップするPlaybookの例

図11 保存したArista EOSのコンフィグからリストアするPlaybookの例(eos_restore.yml)

図12 保存したCisco IOSのコンフィグからリストアするPlaybookの例

バーティカルバーの極意(Vol.66掲載)

投稿日:2020.05.25 | カテゴリー: コード

著者:飯尾 淳

 計量社会学や数理社会学という学問分野があります。人々の行動や社会活動から生み出される多様なデータを定量的に分析することによって、その背景となる社会的な構造や原理を見いだそうという社会学です。筆者はそれらの専門家ではありませんが、社会情報学の文脈で似たような研究に従事しています。今回は、筆者らの研究成果の一つであるTwitterのトレンド分析について、その概要を紹介します。

シェルスクリプトマガジン Vol.66は以下のリンク先でご購入できます。

図6 トレンドのキーワードを取得するPythonコード

Webアプリケーションの正しい作り方(Vol.66記載)

投稿日:2020.05.25 | カテゴリー: コード

著者:しょっさん

ソフトウエアを正しく作るために、エンジニアたちはどんなことを知らなければならないでしょうか。実際のコードを使って、より良くしていくためのステップを考えてみましょう。第6回は、アプリケーションの開発やテストを実施する環境について詳しく考えます。

シェルスクリプトマガジン Vol.66は以下のリンク先でご購入できます。

図2 モックのコード(swagger.json)

シェルスクリプトの書き方入門(Vol.65記載)

投稿日:2020.03.25 | カテゴリー: コード

筆者:大津 真

本連載ではシェルスクリプトの書き方をやさしく紹介します。対象とす
るシェルは、多くのLinuxディストリビューションが標準シェルとして
採用する「Bash」です。第1回目となる今回は、シェルスクリプトの概要
と作成、実行の方法を解説します。

シェルスクリプトマガジン Vol.65は以下のリンク先でご購入できます。

図4 ホスト名と日時を表示するシェルスクリプト「 today1.sh 」

図5 シバンを追加したシェルスクリプト「 today2.sh 」

図6 コメントを追加したシェルスクリプト「 today3.sh 」

図8 コマンド置換を使用したシェルスクリプト「today4.sh」

Vol.65 補足情報

投稿日:2020.03.25 | カテゴリー: コード

目次

p.2の「ラズパイセンサーボードで学ぶ」は「ラズパイ入門ボードで学ぶ」の誤りです。お詫びして訂正いたします。

情報は随時更新致します。

シェルスクリプトマガジンvol.65 Web掲載記事まとめ

投稿日:2020.03.25 | カテゴリー: コード

004 レポート WebブラウザMicrosoft Edgeの新版
005 レポート 仮想マシン構築・運用ソフト「Multipass」
006 NEWS FLASH
008 特集1 知っておきたいDebian/やまねひでき
026 特集2 NGINX Plus徹底解説/髙田知典 コード掲載
042 特別企画 詳説 OpenPOWER/OpenCAPI/河井裕
050 ラズパイ入門ボードで学ぶ 電子回路の制御/米田聡 コード掲載
054 レッドハットのプロダクト/松田絵里奈 コード掲載
064 姐のNOGYO
066 漢のUNIX/後藤大地
072 円滑コミュニケーションが世界を救う!/濱口誠一
074 バーティカルバーの極意/飯尾淳 コード掲載
080 中小企業手作りIT化奮戦記/菅雄一
084 やっつける/桑原滝弥、イケヤシロウ
086 Webアプリの正しい作り方/しょっさん
096 法林浩之のFIGHTING TALKS/法林浩之
098 香川大学SLPからお届け!/重松亜夢 コード掲載
106 MySQL Shellを使おう/梶山隆輔
114 シェルスクリプトの書き方入門/大津真 コード掲載
120 Techパズル/gori.sh
122 コラム「社訓」/シェル魔人

特集2 NGINX Plus徹底解説(Vol.65記載)

投稿日:2020.03.25 | カテゴリー: コード

著者:髙田 知典

「NGINX」(エンジンエックス)は、人気の高いWebサーバーソフトウエ
アです。「NGINX Plus」は、オープンソース版のNGINXにさまざまな
機能拡張を施した商用版です。追加された拡張機能を利用すること
で、システムの可用性と堅牢性の向上や、運用の簡素化を実現できま
す。本特集では、NGINX Plusの機能や試用方法などを紹介します。

シェルスクリプトマガジン Vol.65は以下のリンク先でご購入できます。

Part2 オープンソース版NGINX とNGINX Plus の違い

図2 アクティブヘルスチェックの設定例

図3 Sticky cookie の設定例

図4 Sticky route の設定例

図5 Sticky learnの設定例

図6 DNS名をAレコード情報を使って解決する設定例

図7 DNS名をSRVレコード情報を使って解決する設定例

図9 コンテンツキャッシュのパージ設定例

図15 nginx-sync.confの設定例

図16 NGINX Plus APIの設定例

図18 stateファイルの設定を追加した例

図19 キーバリューストアの設定例

ラズパイ入門ボードで学ぶ電子回路の制御(Vol.65掲載)

投稿日:2020.03.25 | カテゴリー: コード

筆者:米田 聡

シェルスクリプトマガジンでは、小型コンピュータボード「Raspberry Pi」(ラズパイ)は2種類の拡張ボードを制作しています。第12回は、最初に作成した「ラズパイ入門ボード」に「ロータリエンコーダ」を接続し、オーディオのボリュームのようなコントローラを実装します。

シェルスクリプトマガジン Vol.65は以下のリンク先でご購入できます。

図5 ロータリエンコーダ用のクラスファイル(rotary.py)

図6 テスト用のサンプルプログラム(test.py)

レッドハットのプロダクト(Vol.65記載)

投稿日:2020.03.25 | カテゴリー: コード

筆者:松田 絵里奈

「Red Hat Decision Manager」は、OSSの「Drools」がベースのルールエンジンです。同製品で業務ロジックを実装することで、アプリから業務ロジックを分離でき、メンテナンスが容易になります。また、複雑なロジックでも簡単で分かりやすい形式で記述できます。

シェルスクリプトマガジン Vol.65は以下のリンク先でご購入できます。

図11 pom.xml(抜粋)

図12 過去利用状況ファクト(過去利用状況.java)

図13 今回利用ファクト(今回利用.java)

図14 最初の/src/main/resources/割引決定.drlファイル

図16 ルールを動かすためのJavaクラス

図17 追加するルール

図18 さらに追加するルール

バーティカルバーの極意(Vol.65掲載)

投稿日:2020.03.25 | カテゴリー: コード

筆者:飯尾 淳

 今回はデータ分析から少し離れてフラクタル図形について語りましょ
う。例として、縦棒(バーティカルバー)と横棒が縦横無尽に組み合わさっ た図形であるヒルベルト曲線を考えます。ヒルベルト曲線はフラクタル図形の一つで、自己相似性という特徴を持ちます。本記事ではこれを描画するプログラムを紹介します。シンプルなプログラムでこんなにも複雑な図形を描くことができるのかと驚くはずです。

シェルスクリプトマガジン Vol.65は以下のリンク先でご購入できます。

図4 図を出力するためのHTMLコード

図5 1次ヒルベルト曲線を描くJavaScriptコード

図7 n次のヒルベルト曲線を描く手続き

図10 座標変換ルールを格納した 配列を定義するコード

図11 1次から8次までのヒルベルト曲線を描くコード

香川大学SLPからお届け!(Vol.65掲載)

投稿日:2020.03.25 | カテゴリー: コード

筆者:重松 亜夢

 はじめまして!香川大学の重松亜夢です。2019年秋にSLPの所長を引き継ぎま
した。SLPの最近の主な活動はチーム開発です。2019年12月には部員が最近の活動をブログに投稿し、Advent Calendarを作成しました。また、2020年1月には餅つきで親交を深めました。
 今回は、Webアプリケーションに認証機能を実装します。具体的には、米Google社の「Google Cloud Platform」のAPIを使って「Googleでログイン」を実装します。

シェルスクリプトマガジン Vol.65は以下のリンク先でご購入できます。

図9 「.env」ファイルに記述する内容

図10 「main.go」ファイルに記述する内容

図11 「router.go」ファイルに記述する内容

図12 「router.go」ファイルに追記する内容

図13 「sesseion.go」ファイルに記述する内容

図13 「sesseion.go」ファイルに記述する内容

図14 「sesseion.go」ファイルに追記する内容

図16 「sesseion.go」ファイルのCallbackHandler関数の変更コード

図17 「router.go」ファイルに追記する内容

図18 「router.go」ファイルのinit関数に挿入する内容

図19 「handler.go」ファイルに記述する内容

図20 「index.html」ファイルに記述する内容

図21 「base.html」ファイルに記述する内容

図23 「router.go」ファイルのinit関数定義部分に挿入する内容

図24 「router.go」ファイルの末尾に追記する内容

図25 認証後だけアクセスできるルートを設定する例

漢のUNIX(Vol.64掲載)

投稿日:2020.01.25 | カテゴリー: コード

著者:後藤 大地

今回も引き続き、プログラミング言語の「Rust」について解説する。前回も取り上げたが、Rustの学習は「The Rust Programming Language」(https://doc.rust-lang.org/book/)に沿って進めるのがよいと思う。The Rust Programming Languageではまず、「数当てゲーム」(Guessing Game、英訳としては「推測ゲーム」)のプログラムを開発する。これによって、Rustのプログラミングを一通り学べる。

シェルスクリプトマガジン Vol.64は以下のリンク先でご購入できます。

図3 自動生成されるRustプログラムのソースコードファイル「src/main.rs」

図4 コンパイルに必要な構成情報や依存関係を記したファイル「Cargo.toml」

図6 ユーザーに対して入力を求め、その入力を受け付けて「あなたの予測値:」として入力値を表示するプログラム(main.rs)

図8 変数に値を2回代入するサンプルコード(src/main.rs)

図10 mutを指定して値を変更できる変数と宣言したサンプルコード(src/main.rs)

図12 read_line()関数の戻り値を表示させるコード

Vol.64 補足情報

投稿日:2020.01.25 | カテゴリー: コード

姐のNOGYO

p.31にあるUSPファームのサイトの「http://www.uspeace.jp/」は「https://farm.usp-lab.com/」の誤りです。お詫びして訂正いたします。

情報は随時更新致します。

シェルスクリプトマガジンvol.64 Web掲載記事まとめ

投稿日:2020.01.25 | カテゴリー: コード

004 レポート 専修大学3年次の最終発表会
005 NEWS FLASH
008 特集1 はじめてのRust/河野達也 コード掲載
031 姐のNOGYO
032 特集2 Viscuitで学ぶコンピュータサイエンス/渡辺勇士
042 ラズパイセンサーボードで学ぶ 電子回路の制御/米田聡
045 香川大学SLPからお届け!/清水赳 コード掲載
052 錆(さび)/桑原滝弥、イケヤシロウ
054 MySQL Shellを使おう/梶山隆輔
060 法林浩之のFIGHTING TALKS/法林浩之
062 バーティカルバーの極意/飯尾淳
066 Webアプリの正しい作り方/しょっさん コード掲載
076 円滑コミュニケーションが世界を救う!/濱口誠一
078 漢のUNIX/後藤大地 コード掲載
084 中小企業手作りIT化奮戦記/菅雄一
090 ユニケージ新コードレビュー/坂東勝也
096 Techパズル/gori.sh
098 コラム「新しい風が吹いてくる」/シェル魔人

特集1 はじめてのRust(Vol.64記載)

投稿日:2020.01.25 | カテゴリー: コード

著者 :河野 達也

最近、Rustというプログラミング言語の名前をよく見かけるようになりました。米Amazon Web Services社、米Dropbox社、米Facebook社、米Mozilla財団などは、Rustを使ってミッションクリティカルなソフトウエアを開発しています。Rust とはどんな言語でしょうか。シンプルなプログラムの開発を通してRustの世界に飛び込みましょう。

シェルスクリプトマガジン Vol.64は以下のリンク先でご購入できます。

Part1

図1 Rust のプログラムの例

図12 エラーになるRustのプログラムの例

図21 sqrt()関数の定義コード

図23 let文とif式を追加したsqrt()関数の定義コード

図24 loop式を追加したsqrt()関数の定義コード

図25 戻り値の記述を追加したsqrt()関数の定義コード

図26 mut修飾子を追加したsqrt()関数の定義コード

図27 main()関数のコード

Part2

図2 Cargo.tomlファイルに追加する設定

図3 コマンドライン引数を処理するプログラム

図5 Option型の定義(抜粋)

図6 Result型の定義(抜粋)

図7 match式とif let式の使用例

■match式の使用例

■if let式の使用例

図8 コマンドライン引数を必須にする変更

図9 std::fmtモジュールのDebugトレイトの定義(抜粋)

図10 analyze()関数の定義コードを追加

図11 main()関数の定義コードを変更

図12 analyze()関数の定義コードを変更

図15 構造体Tripの定義コードを追加

図16 Tripをデシリアライズするための書き換え(その1)

図17 analyze()関数の定義コードを変更

図19 RecordCounts構造体の定義を追加

図20 RecordCountsのデフォルト値をつくる関数を定義

図21 analyze()関数の定義部分のrec_counts変数が使われている行を変更

図22 日時を変換するparse_datetime()関数の定義コード

図23 分析レコードを絞り込むための関数定義コードを追加(その1)

図24 分析レコードを絞り込むための関数定義コードを追加(その2)

図25 分析レコードを絞り込むためにanalyze()関数の定義コードを変更

図27 統計的な処理をするためのコード

図28 所要時間を登録するためのメソッドを追加(その1)

図29 所要時間を登録するためのメソッドを追加(その2)

図30 統計処理をするためにanalyze()関数の定義コードを変更

図32 DisplayStats構造体の定義コード

図33 DisplayStats構造体の定義コード

図34 DisplayStats型にnew()関連関数を定義するコード

図35 analyze()関数の定義コードを書き換える

香川大学SLPからお届け!(Vol.64掲載)

投稿日:2020.01.25 | カテゴリー: コード

著者:清水赳

前回に引き続き、OSSのシステム監視ツール「Prometheus」を「Itamae」というプロビジョニングツールを使って、サーバー監視システムを構築する方法を紹介します。今回は、Prometheusでノード情報を取得・計算する方法や、外形監視、データの可視化方法について解説します。

シェルスクリプトマガジン Vol.64は以下のリンク先でご購入できます。

図5 「./cookbooks/blackbox_exporter/default.yml」ファイルに記述する内容

図6 「./cookbooks/blackbox_exporter/files/etc/systemd/system/blackbox_exporter.service」ファイルに記述する内容

図7 「./roles/client.rb」ファイルの編集内容

図8 「./cookbooks/blackbox_exporter/files/etc/blackbox_exporter/blackbox.yml」ファイルに記述する内容

図9 「./cookbooks/prometheus/files/etc/prometheus/prometheus.yml」ファイルに追加する内容

Webアプリケーションの正しい作り方(Vol.64記載)

投稿日:2020.01.25 | カテゴリー: コード

著者:しょっさん

ソフトウエアを正しく作るために、エンジニアたちはどんなことを知らなければならないでしょうか。実際のコードを使って、より良くしていくためのステップを考えてみましょう。第4回は、3回目のイテレーションを実施し、システムに必要な機能を実装していきます。

シェルスクリプトマガジン Vol.64は以下のリンク先でご購入できます。

図3 マイグレーションファイルのテンプレート

図4 経費清算のマイグレーションファイルにuser_idのカラムを追加するように修正した

図5 config/database.tsファイル

図6 権限テーブルのモデルファイル

図7 ユーザーマスターテーブルのモデルファイル

図8 passportライブラリを使って、パスワード認証を行う部分(index.tsへの追加)

図9 ログインの強制(index.ts への追加)

図10 src/routes/login.tsファイル(ログインスクリプト)

図11 src/routes/expenses/submit.tsファイルの修正

図12 用意した型定義ファイル

図13 認証関係をつかさどるAuthenticationクラスを記述した「src/controllers/auth/index.ts」ファイル

図14 認証関係のテストケースを記述した「authentication.test.ts」ファイル

図15 テストデータ作成用のシードファイル(src/seeders/*-demo-user.js)

Vol.63 補足情報

投稿日:2019.11.25 | カテゴリー: コード

目次

p.3の連載「MySQL Shellを使おう」の記事タイトル「第3回 MySQL Shellのサーバー運用管理ユーティリティ」は、「第3回 MySQL X DevAPIとドキュメントストア(その1)」の誤りです。お詫びして訂正いたします。

読者プレゼント

p.9の「応募期間」にある「2019年11月25日~2019年1月20日」は「2019年11月25日~2020年1月20日」の誤りです。お詫びして訂正いたします。

MySQL Shellを使おう

p.72の記事タイトル「第3回 MySQL Shellのサーバー運用管理ユーティリティ」は、「第3回 MySQL X DevAPIとドキュメントストア(その1)」の誤りです。お詫びして訂正いたします。

情報は随時更新致します。

シェルスクリプトマガジンvol.63 Web掲載記事まとめ

投稿日:2019.11.25 | カテゴリー: コード

004 CentOS 8とCentOS Stream公開
005 東京ゲームショウ2019開催
006 特別レポート ハル研究所から超小型PC-8001
008 NEWSFLASH
010 特集1 古いラズパイの活用術/麻生二郎 コード掲載
026 特集2 5Gで広がるモバイルの世界/酒井尚之、安藤高任
035 姐のNOGYO
036 特別企画 PartiQLをはじめよう/岡本秀高 コード掲載
043 ラズパイセンサーボードで学ぶ電子回路の制御/米田聡 コード掲載
046 円滑コミュニケーションが世界を救う!/濱口誠一
048 香川大学SLPからお届け!/清水赳 コード掲載
054 法林浩之のFIGHTING TALKS/法林浩之
056 バーティカルバーの極意/飯尾淳 コード掲載
062 漢のUNIX/後藤大地 コード掲載
070 virus/桑原滝弥・イケヤシロウ
072 MySQL Shellを使おう/梶山隆輔
079 中小企業手作りIT化奮戦記/菅雄一 コード掲載
084 Webアプリの正しい作り方/しょっさん コード掲載
098 ユニケージ新コードレビュー/岡田健 コード掲載
102 Techパズル/gori.sh
104 新しい風が吹いてくる/シェル魔人

特集1 古いラズパイの活用術(Vol.63記載)

投稿日:2019.11.25 | カテゴリー: コード

著者:麻生 二郎

小型コンピュータボードの最新機種「Raspberry Pi 4 Model B」が国内で発売できる状態になりました。Raspberry 4 Model Bは、高機能かつ高性能なハードウエアです。このラズパイが登場することでラズパイの適用範囲が広がりますが、同時に古いモデルが不要になります。いらなくなったラズパイを有効利用する三つの方法を紹介します。

シェルスクリプトマガジン Vol.63は以下のリンク先でご購入できます。

活用例1

図5 DMを一斉送信するシェルスクリプト(raspi_dm.sh)

図6 送信メッセージのテンプレートファイル(message.txt)

図7 送信先のメールアドレスと、個別に書き換えたい情報を保存し
たタブ区切りテキストファイル(sendlist.txt)

活用例2

図11 受信メッセージをLINEに転送するシェルスクリプト (raspi_mail_line.sh)

活用例3

図5 エアコン制御のシェルスクリプト(raspi_aircon)

特別企画 PartiQLをはじめよう(Vol.63記載)

投稿日:2019.11.25 | カテゴリー: コード

著者:岡本 秀高

米Amazon Web Services(AWS)社が2019年8月に発表した「PartiQL」は、RDBだけでなくKVSやJSONデータ、CSVデータに対しても問い合わせが可能な便利なクエリー言語です。文法はSQLのサブセットになっていて、SQLを知っている人であればすぐに使えます。PartiQL対応の実サービスも提供され始めた今、この新しいクエリー言語を始めてみましょう。

シェルスクリプトマガジン Vol.63は以下のリンク先でご購入できます。

図13 「sample.csv」ファイルの内容

図15 項目名を追加したCSVファイル「with_header.csv」の内容

図20 生成されたCSVファイル「out.csv」の内容

図22 生成されたAmazon Ion形式ファイル「out.ion」の内容

センサーボードで学ぶ電子回路の制御(Vol.63掲載)

投稿日:2019.11.25 | カテゴリー: コード

著者:米田 聡

シェルスクリプトマガジンでは、小型コンピュータボード「Raspberry Pi」(ラズパイ)向けのセンサー搭載拡張ボード「ラズパイセンサーボード」を制作しました。第10 回では、I2C 接続のモノクロ有機ELディスプレイをGroveコネクタにつなぎ、ラズパイセンサーボードだけでセンサーから情報をディスプレイ上に表示します。

シェルスクリプトマガジン Vol.63は以下のリンク先でご購入できます。

図6 有機ELディスプレイに日本語を表示するためのライブラリ(OLED.py)

図7 BME280のデータを表示するサンプルプログラム(sample.py)

香川大学SLPからお届け!(Vol.63掲載)

投稿日:2019.11.25 | カテゴリー: コード

著者:清水 赳

 こんにちは、香川大学修士1年の清水です。2年ぶりの登板です。
 今回から2回にわたり、OSSのシステム監視ツール「Prometheus」と「Itamae」というプロビジョニングツールを使って、サーバー監視システムを構築する方法を紹介します。今回は、Prometheusの配備とサーバー稼働状況の簡単な可視化について解説します。

シェルスクリプトマガジン Vol.63は以下のリンク先でご購入できます。

図5 「./cookbooks/prometheus/default.rb」ファイルに記述する内容

図6 「./cookbooks/prometheus/etc/systemd/system/prometh
eus.service」ファイルに記述する内容

図8 「./cookbooks/node_exporter/default.rb」ファイルに記述する内容

図9 「./cookbooks/node_exporter/etc/systemd/system/node
_exporter.service」ファイルに記述する内容

図10 「./cookbooks/prometheus/files/etc/prometheus/prome
theus.yml」ファイルの編集内容

バーティカルバーの極意(Vol.63掲載)

投稿日:2019.11.25 | カテゴリー: コード

著者:飯尾 淳

本連載は、「縦棒」(バーティカルバー)をキーワードにデータ処理や効果的なアルゴリズムについて考えるものです。ここ何回かバーティカルバーから離れて自由なテーマで論じ過ぎていたような気がするので、今回は初心に戻ってヒストグラムを用いたデータ分析の議論を紹介してみることにしましょう。
テーマは入力効率の問題です。普段、皆さんがお使いのキーボードによるタイピングとスマートフォンのフリック入力、はたしてどちらが効率的に入力できるのでしょうか?

シェルスクリプトマガジン Vol.63は以下のリンク先でご購入できます。

図3 hoge hogeタイピングにおけるデータ送信部のコード

漢のUNIX(Vol.63掲載)

投稿日:2019.11.25 | カテゴリー: コード

著者:後藤 大地

Rustは、Mozilla Foundationが開発を支援している比較的新しいプログラミング言語だ。「マルチパラダイムシステムプログラミング言語」と呼ばれており、C/C++の代わりに利用できるプログラミング言語と言われている。C/C++のように見えるが、関数型プログラミングのパラダイムも織り込まれていて、かなり厳密なコーディングができるようになっている。本連載では、しばらく、このRustを取り上げていく。

シェルスクリプトマガジン Vol.63は以下のリンク先でご購入できます。

図20 Hello Worldのコード

中小企業手作りIT化奮戦記

投稿日:2019.11.25 | カテゴリー: コード

著者:菅 雄一

WordやExcel、PDFビューアなどで外字を含む文書を表示したり、外字を含む文章をメールで受信して閲覧したりすると、文字化けが起きる場合がある。今回は、私が長年、外字と向き合って格闘してきた話を書くことにする。

シェルスクリプトマガジン Vol.63は以下のリンク先でご購入できます。

図4 CSSファイルに追加する記述

図5 独自外字を表示するためのHTMLファイルの記述例

Webアプリケーションの正しい作り方(Vol.63記載)

投稿日:2019.11.25 | カテゴリー: コード

著者:しょっさん

ソフトウエアを正しく作るために、エンジニアたちはどんなことを知らなければならないでしょうか。実際のコードを使って、より良くしていくためのステップを考えてみましょう。第3回は、前回のプロジェクトの計画や方針に基づいて2回の開発サイクル(イテレーション)を回します。

シェルスクリプトマガジン Vol.63は以下のリンク先でご購入できます。

図4 TypeScriptに書き換えたメインのプログラム(index.ts)

図5 TypeScriptで作成した自作のモデルファイル(expense.ts)

図6 トランスパイルオプションファイル(tsconfig.json)

図7 gulpfile.jsファイルの内容

図8 jest.config.jsの内容

図9 index.test.tsの内容

図11 super.test.tsファイルの内容

図13 .circleci/config.ymlファイルの内容

図14 書き換えたsuper.test.tsの内容

図15 index.tsファイルの内容

図16 login.tsファイルの内容

図17 payment.tsファイルの内容

図18 submit.tsファイルの内容

図20 分割後のindex.tsファイルの内容

図21 package.jsonファイルの内容

ユニケージ新コードレビュー(Vol.63掲載)

投稿日:2019.11.25 | カテゴリー: コード

著者:岡田 健

ユニケージでは、小さな道具の「コマンド」をシェルスクリプトで組み合わせて、さまざまな業務システムを構築しています。本連載では、毎回あるテーマに従ってユニケージによるシェルスクリプトの記述例を分かりやすく紹介します。第10回は、グラフ可視化ソフト「Graphviz」を用いたグラフィカルなコード設計書の作成方法について解説します。

シェルスクリプトマガジン Vol.63は以下のリンク先でご購入できます。

図1 粗利を計算するシェルスクリプト(Source1.sh)

図3 DOT言語で書かれた中間コード(Source1.dot)

機械学習のココロ(Vol.62掲載)

投稿日:2019.09.25 | カテゴリー: コード

著者:石井 一夫

最終回は、次世代データサイエンス言語として注目されている「Julia」を紹介します。高速な実行速度、並列分散処理の容易さ、数式記述の自然さなどを特徴とするJuliaは、今後急速に普及すると考えられます。

シェルスクリプトマガジン Vol.62は以下のリンク先でご購入できます。

図4 必要パッケージを読み込むコード

図5 MNIST データを読み込むコード

図7 訓練用データの前処理用コード

図8 モデルの構築用コード

図9 損失関数などの設定用コード

図10 訓練データを用いた学習をするコード

図13 テストデータの前処理用コード

図14 テスト画像の数字を推測するコード

特集1 PostgreSQL入門(Vol.62記載)

投稿日:2019.09.25 | カテゴリー: コード

著者:千田貴大

PostgreSQLは、今もなお成長を続けるオープンソースのリレーショナルデータベース管理システム(RDBMS)です。オーストリアのsolid IT社が運営するDBMSに関する情報サイト「DB-Engines」(https://db-engines.com/en/)では、2017年から2年連続で「the DBMS of the year」に選ばれており、勢いがあるRDBMSといえます。本特集では、PostgreSQLの導入方法や基本的な使い方、いくつかの機能について紹介します。

シェルスクリプトマガジン Vol.62は以下のリンク先でご購入できます。

図7 環境変数設定ファイル「/var/lib/pgsql/.bash_profile」の内容

図13 「pg_hba.conf」ファイルの内容

図16 アーカイブログ取得のための「postgresql.conf」ファイルの変更箇所

図17 「recovery.conf」ファイルに記述する必要がある設定

シェルスクリプトマガジンvol.62 Web掲載記事まとめ

投稿日:2019.09.25 | カテゴリー: コード

004 レポート exFATのLinuxカーネル実装
005 NEWS FLASH
008 特集1 PostgreSQL入門/千田貴大 コード掲載
024 特集2 Jetson Nanoを使ってみよう/橘幸彦
034 姐のNOGYO
035 特別企画 はじめてのLinux/長原宏治
050 ラズパイセンサーボードで学ぶ 電子回路の制御/米田聡 コード掲載
054 漢のUNIX/後藤大地
062 バーティカルバーの極意/飯尾淳 コード掲載
066 法林浩之のFIGHTING TALKS/法林浩之
068 機械学習のココロ/石井一夫 コード掲載
073 MySQL Shellを使おう/梶山隆輔
078 円滑コミュニケーションが世界を救う!/濱口誠一
080 香川大学SLPからお届け!/宇野光純 コード掲載
088 めし/桑原滝弥・イケヤシロウ
090 中小企業手作りIT化奮戦記/菅雄一
096 ユニケージ新コードレビュー/坂東勝也 コード掲載
102 Techパズル/gori.sh
104 コラム「平凡で地味な人生を幸せに送る」/シェル魔人

ユニケージ新コードレビュー(Vol.62掲載)

投稿日:2019.09.25 | カテゴリー: コード

著者:坂東 勝也

ユニケージでは、小さな道具の「コマンド」をシェルスクリプトで組み合わせて、さまざまな業務システムを構築しています。本連載では、毎回あるテーマに従ってユニケージによるシェルスクリプトの記述例を分かりやすく紹介します。第9回は、前回の続きとしてデータの扱い方について解説します。

シェルスクリプトマガジン Vol.62は以下のリンク先でご購入できます。

図2 LV3データ作成処理のコード(一部抜粋)

Vol.62 補足情報

投稿日:2019.09.25 | カテゴリー: コード

訂正・補足情報はありません
情報は随時更新致します。

センサーボードで学ぶ電子回路の制御(Vol.62掲載)

投稿日:2019.09.25 | カテゴリー: コード

著者:米田 聡

シェルスクリプトマガジンでは、小型コンピュータボード「Raspberry Pi」(ラズパイ)向けのセンサー搭載拡張ボード「ラズパイセンサーボード」を制作しました。第9 回では、I/Oエキスパンダに7セグメントLEDを四つ接続してセンターからの値を表示します。

シェルスクリプトマガジン Vol.62は以下のリンク先でご購入できます。

図5 LEDを表示するライブラリ(led4digits.py)

図6 BME280からの温度を取得・表示するプログラム(sample.py)

香川大学SLPからお届け!(Vol.62掲載)

投稿日:2019.09.25 | カテゴリー: コード

筆者:宇野 光純

 前回に引き続き、Windowsアプリケーションとして動く簡単な2Dゲームの開発を紹介します。汎用プログラミング言語の「C++」と、オープンソースのパソコンゲーム開発用ライブラリの「DXライブラリ」を組み合わせることで、時間と労力は必要ですが、Unityなどのゲームエンジンよりも自由度の高いゲーム開発ができます。

シェルスクリプトマガジン Vol.62は以下のリンク先でご購入できます。

図2 「Shot.h」ファイルに記述するコード

図3 「Shot.cpp」ファイルに記述するコード

図4 「Object.h」ファイルに追加するコード

図5 「Player.h」ファイルに追加するコード

図6 「Player.cpp」ファイルに追加するコード

図7 「MainScene.h」ファイルに記述するコード

図8 「MainScene.cpp」ファイルに追加するコード

図10 「Info.h」ファイルに追加するコード

図11 「Info.cpp」ファイルに追加するコード

図12 「Object.h」ファイルに追加するコード

図13 「Player.h」ファイルに追加するコード

図14 「Player.cpp」ファイルに追加するコード

図15 「Enemy.h」ファイルに追加するコード

図16 「Enemy.cpp」ファイルに追加するコード

図17 「Shot.h」ファイルに追加するコード

図18 「Shot.cpp」ファイルに追加するコード

図19 「MainScene.cpp」ファイルに追加するコード

図20 「Info.h」ファイルに追加する コード

図21 「Info.cpp」ファイルに追加するコード

図22 「TitleScene.h」ファイルに 記述するコード

図23 「TitleScene.cpp」ファイルに記述するコード

図25 「ResultScene.h」ファイルに記述するコード

図26 「ResultScene.cpp」ファイルに記述するコード

図29 「Main.cpp」ファイルに追加するコード

図30 「MainScene.h」ファイルに追加 するコード

図31 「MainScene.cpp」ファイルに追加するコード

バーティカルバーの極意(Vol.62掲載)

投稿日:2019.09.25 | カテゴリー: コード

著者:飯尾 淳

 しばらくデータ分析の話題から遠ざかっているような気がしますが、 ちょっとしたトレーニングをするつもりで前回、前々回と同様にプログラミングの話を続けましょう。今回は、状態遷移図に基づくシステムの動作原理を考えます。最初に簡単なケースを考え、その後で少しブラッシュアップして仕様をアップデートします。
 ところで、状態遷移図は「GraphViz1」というツールで描画します。この連載のテーマである「バーティカルバー」(垂直棒または縦棒)を用いた表現も指定できますが、今回は縦横にこだわらず柔軟に表現してみましょう。

シェルスクリプトマガジン Vol.62は以下のリンク先でご購入できます。

図2 メッセージ出力プログラム

図4 メッセージ出力プログラムの改良版(gangan2.py)

Vol.61 補足情報

投稿日:2019.07.25 | カテゴリー: コード

漢のUNIX

p.92の1行目にある「透過」は「等価」の誤りです。お詫びして訂正いたします。

情報は随時更新致します。

Webアプリケーションの正しい作り方(Vol.61記載)

投稿日:2019.07.25 | カテゴリー: コード

著者:しょっさん

ソフトウエアを正しく作るために、エンジニアたちはどんなことを知らなければならない でしょうか。実際のコードを使って、より良くしていくためのステップを考えてみましょう。第2回は、プロジェクトを開始するまでの準備を解説します。

シェルスクリプトマガジン Vol.61は以下のリンク先でご購入できます。

図1 注釈を入れたプログラム

香川大学SLPからお届け!(Vol.61掲載)

投稿日:2019.07.25 | カテゴリー: コード

著者:宇野 光純

 今回は、Windowsアプリケーションとして動く簡単な2Dゲームの開発を紹介します。汎用プログラミング言語の「C++」と、オープンソースのパソコンゲーム開発用ライブラリの「DXライブラリ」を組み合わせることで、時間と労力は必要ですが、Unityなどのゲームエンジンよりも自由度の高いゲーム開発ができます。

シェルスクリプトマガジン Vol.61は以下のリンク先でご購入できます。

図1 DXライブラリを使用する際の基本コード(Main.cpp)

図2 「Info.cpp」ファイルに記述するコード

図3 「Info.h」ファイルに記述するコード

図4 「Object.h」ファイルに記述するコード

図5 「Player.cpp」ファイルに記述するコード

図6 「Player.h」ファイルに記述するコード

図7 「Enemy.cpp」ファイルに記述するコード

図8 「Enemy.h」ファイルに記述するコード

図9 「MainScene.cpp」ファイルに記述するコード

図10 「MainScene.h」ファイルに 記述するコード

図11 コードを追加した「Main.cpp」ファイルの内容

機械学習のココロ(Vol.61掲載)

投稿日:2019.07.25 | カテゴリー: コード

著者:石井 一夫

今回はディープラーニングのバリエーションとして、画像認識によく用いられる「CNN」(Convolutional Neural Network)と、自然言語処理によく用いられる「RNN」(Recurrent Neural Network)について紹介します。

シェルスクリプトマガジン Vol.61は以下のリンク先でご購入できます。

図3 サンプルコードのCNN 定義部分(抜粋)

図7 サンプルコードのRNN 定義部分

シェルスクリプトマガジンvol.61 Web掲載記事まとめ

投稿日:2019.07.25 | カテゴリー: コード

004 レポート 新版の「Debian 10」を公開
005 レポート 新開発の汎用メモリーアロケータ
006 NEWS FLASH
008 特集1 Red Hat Enterprise Linux 8/森若和雄
018 特集2 micro:bitを動かそう/中田和宏
030 特別企画 GPSモジュールで遊ぼう/麻生二郎 コード掲載
037 姐のNOGYO
038 ラズパイセンサーボードで学ぶ 電子回路の制御/米田聡 コード掲載
041 Webアプリケーションの正しい作り方/しょっさん コード掲載
052 仮想現実/桑原滝弥・イケヤシロウ
054 MySQL Shellを使おう/梶山隆輔
062 中小企業手作りIT化奮戦記/菅雄一
068 バーティカルバーの極意/飯尾淳 コード掲載
074 香川大学SLPからお届け!/宇野光純 コード掲載
080 円滑コミュニケーションが世界を救う!/濱口誠一
082 機械学習のココロ/石井一夫 コード掲載
086 法林浩之のFIGHTING TALKS/法林浩之
088 漢のUNIX/後藤大地
094 ユニケージ新コードレビュー/坂東勝也
102 Techパズル/gori.sh
104 コラム「近未来に起こってほしいこと」/シェル魔人

特別企画 GPSモジュールで遊ぼう(Vol.61掲載)

投稿日:2019.07.25 | カテゴリー: コード

著者:麻生 二郎

「NEO-6M」というGPS(地理情報システム)モジュールを搭載したアンテナ付き基板が数百円に 購入できます。この基板にUART-USB変換ケーブルを接続するだけで、パソコンから位置の情報を取得できます。最新のLinuxディストリビューションとシェルスクリプトで遊んでみましょう。

シェルスクリプトマガジン Vol.61は以下のリンク先でご購入できます。

図13 GPSモジュールを利用するシェルスクリプト(gps_data.sh)

バーティカルバーの極意(Vol.61掲載)

投稿日:2019.07.25 | カテゴリー: コード

著者:飯尾 淳

 前回から、「GDHP」(Gniibe Distributed HanoiProtocol)というプロトコルでハノイの塔パズルを解き、それを可視化して確認しようという試みに挑戦しています。プログラムはJavaScript で記述し、「p5.js」というグラフィックスライブラリを利用します。
 前回は、初期状態の塔を積み上げるところまで完成させました。今回はアニメーションで実際に動作させ、GDHPでパズルが解けることを確認しましょう。

シェルスクリプトマガジン Vol.61は以下のリンク先でご購入できます。

図1 向かい合う2本の塔を点滅させるコード

図3 draw()関数を修正する

図4 円盤を移動させる修正

図6 trun()関数

図7 終了条件を追加

センサーボードで学ぶ電子回路の制御(Vol.61掲載)

投稿日:2019.07.25 | カテゴリー: コード

著者:米田 聡

シルスクリプトマガジンでは、小型コンピュータボード「Raspberry Pi」(ラズパイ)向けのセンサー搭載拡張ボード「ラズパイセンサーボード」を制作しました。第8回では、前回I/Oエキスパンダ「MCP23017」で増やしたGPIO 端子に7セグメントLEDを接続して制御します。

シェルスクリプトマガジン Vol.61は以下のリンク先でご購入できます。

図5 7セグメントLEDに数字を出力するクラスライブラリ(ssegled.py)

図6 テストスクリプト(count.py)

ラズパイセンサーボード向けソースコード集

投稿日:2019.05.30 | カテゴリー: コード

シェルスクリプトマガジンとビット・トレード・ワンで共同制作したRaspberry Pi拡張ボード「ラズパイセンサーボード」のソースコード集です。雑誌と一緒にご活用ください。

ソースコードの入手先

2018年12月号(Vol.57)特集1「ラズパイでセンサーを扱う」
2019年2月号(Vol.58)連載「ラズパイセンサーボードで学ぶ 電子回路の制御」第5回
・2019年4月号(Vol.59)連載「ラズパイセンサーボードで学ぶ 電子回路の制御」第6回(コードなし)
2019年6月号(Vol.60)連載「ラズパイセンサーボードで学ぶ 電子回路の制御」第7回
2019年8月号(Vol.61)連載「ラズパイセンサーボードで学ぶ 電子回路の制御」第8回
2019年10月号(Vol.62)連載「ラズパイセンサーボードで学ぶ 電子回路の制御」第9回
2019年12月号(Vol.63)連載「ラズパイセンサーボードで学ぶ 電子回路の制御」第10回
・2020年2月号(Vol.64)連載「ラズパイセンサーボードで学ぶ電子回路の制御」第11回(コードなし)
・2020年6月号(Vol.66)連載「ラズパイセンサーボードで学ぶ電子回路の制御」第13回
2020年8月号(Vol.67)連載「ラズパイセンサーボードで学ぶ電子回路の制御」最終回


※関連記事掲載時に追加していきます。

※ラズパイ入門ボード向けソースコード集はこちら

Webアプリケーションの正しい作り方(Vol.60記載)

投稿日:2019.05.25 | カテゴリー: コード

著者:しょっさん

 ソフトウエアを正しく作るために、エンジニアたちはどんなことを知らなければならないのでしょうか。実際のコードを使って、より良くしていくためのステップを考えてみましょう。第1回は、動くソフトウエアとは何かを解説していきます。

シェルスクリプトマガジン Vol.60は以下のリンク先でご購入できます。

図1 経費精算Webアプリケーション

「Visual Studio Code」を便利に使う(Vol.60掲載)

投稿日:2019.05.25 | カテゴリー: コード

著者:あかね

 米Microsoft社発のオープンソースエディタ「Visual Studio Code」には「Extension」と呼ばれる機能拡張用のソフトウエアが多数提供されています。本連載では便利なExtensionの使い方を中心に紹介します。第3回は、Windowsの OS標準のCL(I シェル環境)「PowerShell」で記述したスクリプトをデバックするためのExtensionを紹介します。

シェルスクリプトマガジン Vol.60は以下のリンク先でご購入できます。

図9 サンプルスクリプト(test.ps1)

図16 引数を必要とするサンプルスクリプト

特集1 ラズパイで電子回路の作成と制御(Vol.60掲載)

投稿日:2019.05.25 | カテゴリー: コード

著者:麻生二郎

 電子回路を触ってみたい、作ってみたい、制御してみたいと思ったときに、人気の小型コンピュータボード「Raspberry Pi」(ラズパイ)と組み合わせるのが意外と簡単です。本特集では、市販のモジュールと、ラズパイを使って電子回路
の作成や制御を素早く実現する方法を紹介します。

シェルスクリプトマガジン Vol.60は以下のリンク先でご購入できます。

図5 制御プログラム(bme280_sensor.py)

図8 制御プログラム(atd1602_lcd.py)

図11 制御プログラム(bh1750_sensor.py)

図14 制御プログラム(rain_sensor.py)

図17 制御プログラム(fire_sensor.py)

図20 制御プログラム(pir_sensor.py)

図26 制御プログラム(doorphone.py)

図28 制御プログラム(sound_sensor.py)

図31 制御プログラム(soil_sensor.py)

図34 制御プログラム(slope_sensor.py)

図38 制御プログラム(distance_sensor.py)

図42 制御プログラム(music_box.py)

バーティカルバーの極意(Vol.60掲載)

投稿日:2019.05.25 | カテゴリー: コード

著者:飯尾淳

 本連載の第5 回(Vol.51、2017 年12 月号)で、バーティカルバー(垂直棒)が3 本立っているという理由から「ハノイの塔」というパズルを取り上げました。今回は、そのときの考察を思い出しつつ、ハノイの塔を解くプログラムを再び考えます。
 ただし、今回は三つの塔を「上から見下ろした」状態、俯瞰(ふかん)で考えます。至ってシンプルなルールで解ける面白さを、動作の可視化プログラムを用いて確認してみましょう。

シェルスクリプトマガジン Vol.60は以下のリンク先でご購入できます。

図3 sketch.jsを書き換えたコード 

図5 追加した描画に関するコード部分

シェルスクリプトマガジンvol.60 Web掲載記事まとめ

投稿日:2019.05.25 | カテゴリー: コード

004 レポート Windows Subsystem for Linux 2
005 レポート LibrePlanet 2019開催
006 NEWS FLASH
008 特集1 ラズパイで電子回路の作成と制御/麻生二郎 コード掲載
028 特集2 PHP超入門/柏岡秀男 コード掲載
038 特集3 ユニケージ開発手法入門/當仲寛哲 コード掲載
051 姐のNOGYO
052 特別企画 ツールチェーン/小薗井康志、川副博、古川正宏 コード掲載
074 ラズパイセンサーボードで学ぶ 電子回路の制御/米田聡 コード掲載
078 人間とコンピュータの可能性/大岩元
080 Webアプリケーションの正しい作り方/しょっさん コード掲載
088 close/桑原滝弥・イケヤシロウ
090 中小企業手作りIT化奮戦記/菅雄一
096 香川大学SLPからお届け!/山下賢治 コード掲載
101 「Visual Studio Code」を便利に使う/あかね コード掲載
106 円滑コミュニケーションが世界を救う!/濱口誠一
108 バーティカルバーの極意/飯尾淳 コード掲載
114 法林浩之のFIGHTING TALKS/法林浩之
116 機械学習のココロ/石井一夫 コード掲載
121 漢のUNIX/後藤大地
128 UNIXの歴史を振り返る/古寺雅弘
134 ユニケージ新コードレビュー/岡田健 コード掲載
136 Techパズル/gori.sh
140 コラム「令和はサバイバルの時代」/シェル魔人

特別企画 ツールチェーン(Vol.60掲載)

投稿日:2019.05.25 | カテゴリー: コード

 著者:小薗井康志、川副博、古川正宏

 「コーディング」「ビルド」「実装」「テスト」という一連のソフトウエア開発作業を、「ツールチェーン」を使って、効率良く、そして楽にしてみませんか。クラウドサービス「IBM Cloud」が提供するツールチェーンで、その便利さを味わってみましょう。

シェルスクリプトマガジン Vol.60は以下のリンク先でご購入できます。

図21 サンプルで用意されているテストスクリプト

特集2 PHP超入門(Vol.60掲載)

投稿日:2019.05.25 | カテゴリー: コード

著者:柏岡秀男

 「PHP」(PHP: Hypertext Preprocessor)は、Webアプリケーションの開発によく使われているプログラミング言語です。本特集では、WindowsやmacOSにPHPプログラムの実行環境やWebサーバー、DBMSサーバーをインストールできる「MAMP」というソフトウエアを使って、PHPプログラミングを手軽に体験する方法を紹介します。これを機会にぜひPHPプログラミングを始めてみてください。

シェルスクリプトマガジン Vol.60は以下のリンク先でご購入できます。

図1 現在時刻を表示するWeb ページをPHPで作成した例

図10 helloworld.php

図11 表示したWeb ページのソースコード

図12 sample1.php

図13 以下のサンプルコードの冒頭に付加するコード

図14 sample2.php

図15 sample3.php

図17 if 文の基本構文

図18 input.php

図19 sample_input.php

図20 sample_input2.php

図25 connect.php

図26 input.html

図27 add.php

図28 list.php

図30 list2.php

図31 update.php

香川大学SLPからお届け!(Vol.60掲載)

投稿日:2019.05.25 | カテゴリー: コード

著者:山下賢治

 今回は、Webブラウザでアクセスできる予定共有アプリの作成方法を紹介します。Webアプリケーションフレームワークの「Ruby on Rails」と、JavaScriptのライブラリである「FullCalendar」を組み合わせることで、マウス操作で予定の追加や変更が可能な予定共有アプリを手軽に作成できます。

シェルスクリプトマガジン Vol.60は以下のリンク先でご購入できます。

図2 ルーティング設定

図3 アプリのViewを作成する手順

図5 ルーティング設定の変更

図6 登録データをJSON形式で取り出すコードを追加

図7 登録済みのデータを表示するコードを追加

図9 「app/assets/javascripts/application.js」のコード改造例

図10 「app/views/calendar/index.html.erb」ファイルに追加する記述

図11 「app/controllers/schedules_controller.rb」ファイルに追加する記述

ユニケージ新コードレビュー(Vol.60掲載)

投稿日:2019.05.25 | カテゴリー: コード

著者:岡田健

 ユニケージでは、小さな道具の「コマンド」をシェルスクリプトで組み合わせて、さまざまな業務システムを構築しています。本連載では、毎回あるテーマに従ってユニケージによるシェルスクリプトの記述例を分かりやすく紹介します。第7回は、書き方のルールとなるお作法と分かりやすいコードの書き方について解説します。

シェルスクリプトマガジン Vol.60は以下のリンク先でご購入できます。

図1 売上計算するシェルスクリプト

図2 awkによる長いコードが挿入されたシェルスクリプト

図3 在庫を扱うシェルスクリプトの先頭部分

図4 各種マスターを使って在庫に名称を挿入するシェルスクリプトの一部

図5 図4の修正版

特集3 ユニケージ開発手法入門(Vol.60掲載)

投稿日:2019.05.25 | カテゴリー: コード

著者:當仲寛哲

業務システムを開発するときの選択肢として「ユニケージ
開発手法」があります。ユニケージ開発手法は、Linux/UNIX
のコマンドを基盤としたものです。「シェル魔人」と「りな」
の会話を通して、ユニケージ開発手法で業務システムがど
う作られるのかを理解しましょう。

シェルスクリプトマガジン Vol.60は以下のリンク先でご購入できます。

図4 ユニケージ開発手法によるシェルスクリプトの記述例

図19 セールスレポートを作成するシェルスクリプト(demo)

図21 コメントを入れた例

図25 最新のレベル4を出力する

Vol.60 補足情報

投稿日:2019.05.25 | カテゴリー: コード

目次

連載コラム「香川大学SLPからお届け!」の回のタイトルに誤りがありました。「バーコードリーダーを使って手軽なデータ収集システム」ではなく、「Ruby on RailsとFullCalendarで予定共有アプリを作る」です。 お詫びして訂正いたします 。

読者プレゼント

右上のQRコードが誤っていました。正しいQRコードは以下です。 お詫びして訂正いたします 。

姐のNOGYO

左上の別掲記事の「1998年」は「1989年」の誤りです。 お詫びして訂正いたします 。

情報は随時更新致します。

センサーボードで学ぶ電子回路の制御(Vol.60掲載)

投稿日:2019.05.25 | カテゴリー: コード

著者:米田聡

 シェルスクリプトマガジンでは、小型コンピュータボード「Raspberry Pi」(ラズパイ)向けのセンサー搭載拡張ボード「ラズパイセンサーボード」を制作しました。第7 回では、I2C のインタフェースに接続するI/Oエキスパンダ「MCP23017」でGPIO 端子を増やす方法を紹介します。

シェルスクリプトマガジン Vol.60は以下のリンク先でご購入できます。

図9 MCP23017のGPIOを読み書きするためのPythonライブラリ(mcpgpio.py)

機械学習のココロ(Vol.60掲載)

投稿日:2019.05.25 | カテゴリー: コード

著者:石井一夫

 今回は、機械学習を実施する際に一番問題となる過学習の問題を取り上げます。過学習というのは、機械 学習のモデルが、ある特定の状況に過剰適合してしまい、新たなサンプルに対してうまく予測ができなくなるという現象です。

シェルスクリプトマガジン Vol.60は以下のリンク先でご購入できます。

図5 L1 正則化を実施するコード

図6 過学習の評価結果を表示するコード

連載 シェルスクリプトを書いてみよう

投稿日:2019.04.2 | カテゴリー: コード
イラスト:ヨーダヒデキ

 シェルスクリプトは、Linux/Unix系OSのコマンドのみで記述できるプログラムです。さまざまな処理を簡単に記述でき、LinuxやUnix系OSの環境があれば、すぐに実行して試せるのでとても便利です。本連載では、役立ちそうなシェルスクリプトを紹介しながら、シェルスクリプトの書き方を説明していきます(隔週更新予定)。
 なお、シェルスクリプトを開発・実行するには、Linux/Unix系OSがインストールされたパソコンが必要です。例えば、「連載 UbuntuではじめるLinuxサーバー」の第1回第4回で紹介した方法でUbuntu Serverをインストールしたパソコンを用意できます。

記事中で紹介したシェルスクリプトのコードは、以下のページから入手できます(WordPressのバグなのか、何らかのパターンで「$」などの文字が消えてしまうことがありますのでシェルスクリプト自体はこちらから入手してください)。
https://github.com/shellscript-magazine/rensai_shellscript1

目次
第1回 Amazonの商品ページURLをきれいにする
第2回 コメント行を削除する
第3回 写真を整理する
第4回 ファイルサーバーを構築する
第5回 文書をPDFファイルに変換する
第6回 DMを自動送信する(SMTPS編)
第7回 DMを自動送信する(STARTTLS編)
第8回 自動でアーカイビングする
第9回 グローバルIPアドレスを通知する
第10回 写真から場所を調べる
第11回 大切なメールだけをチャットルームに送る
第12回 コマンドを作る
最終回 不正アクセスを通知する

シェルスクリプトマガジンvol.59 Web掲載記事まとめ

投稿日:2019.03.25 | カテゴリー: コード

004 レポート Homebrew 2.0.0リリース
005 レポート runcの脆弱性問題
006 NEWS FLASH
008 特集1 Linuxパーフェクトカスタマイズ/麻生二郎 コード掲載
020 特集2 AWS Lambdaを好きな言語で使おう/岡本秀高 コード掲載
028 特別企画 リレー式コンピュータプログラミング/若菜魁、入口雄也、八木武尊
036 ラズパイセンサーボードで学ぶ 電子回路の制御/米田聡
040 試み/桑原滝弥・イケヤシロウ
042 バーティカルバーの極意/飯尾淳
046 円滑コミュニケーションが世界を救う!/濱口誠一
048 中小企業手作りIT化奮戦記/菅雄一
056 法林浩之のFIGHTING TALKS/法林浩之
058 漢のUNIX/後藤大地
064 人間とコンピュータの可能性/大岩元
066 香川大学SLPからお届け!/竹原一駿 コード掲載
071 姐のNOGYO
072 UNIXの歴史を振り返る/古寺雅弘
078 Node.js/Expressで楽々Webアプリ開発/しょっさん コード掲載
089 ユニケージ新コードレビュー/坂東勝也 コード掲載
096 Techパズル/gori.sh
098 コラム「ユニケージお作法のココロ」/シェル魔人

ユニケージ新コードレビュー(Vol.59掲載)

投稿日:2019.03.25 | カテゴリー: コード

著者:坂東勝也

ユニケージでは、小さな道具の「コマンド」をシェルスクリプトで組み合わせて、さまざまな業務システムを構築しています。本連載では、毎回あるテーマに従ってユニケージによるシェルスクリプトの記述例を分かりやすく紹介します。第6回は、仕入伝票処理システムを例に最新マスターを取得するコードをレビューします。

シェルスクリプトマガジン Vol.59は以下のリンク先でご購入できます。

図11 伝票番号で並べ替え

図12 更新された仕入伝票を調べる

図13 指定月の仕入伝票の取得

図14 L1とL3のデータをマージ

特集2 AWS Lambdaを好きな言語で使おう(Vol.59掲載)

投稿日:2019.03.25 | カテゴリー: コード

著者:岡本秀高

カンファレンス「AWS re:invent 2018」にて発表された新サービス「AWS Lambda Custom Runtimes」。これまではサポートをアナウンスした言語でしか「Lambda関数」を作成できませんでした。このサービスの登場により好きな言語で作成可能となりました。本特集では、AWS Lambda Custom Runtimesの使い方から、ランタイム(実行環境)を実際に作って利用するところまでを分かりやすく紹介します。

シェルスクリプトマガジン Vol.59は以下のリンク先でご購入できます。

図3 bootstrapファイルの内容

図5 function.shファイルの内容

図6 template.yamlファイルの内容

Vol.59 補足情報

投稿日:2019.03.25 | カテゴリー: コード

訂正・補足情報はありません。

情報は随時更新致します。

香川大学SLPからお届け!(Vol.59掲載)

投稿日:2019.03.25 | カテゴリー: コード

著者:竹原一駿

USB接続のバーコードリーダーを用いてバーコード化されたデータを読み取り、その結果をサーバーに送って集計するデータ収集システムを開発しました。今回は、同システムについて紹介します。クライアントはGo、集計サーバーは主にPerlで記述しています。クライアントもサーバーもDocker環境で簡単に動かせますので、ぜひ試してみてください。

シェルスクリプトマガジン Vol.59は以下のリンク先でご購入できます。

図8 バーコードリーダーで読み取ったデータを取得する関数

図9 意見を示す数値を文字列に変換するコード

図10 データを集計サーバーに送るためのコード

図11 HTTPサーバー機能を提供するMyWebServerパッケージの記述

図12 CGIで日本語を表示するための記述

図13 ハッシュ変数にサブルーチンのリファレンスを保存

図14 insertページを表示するコード

図15 analyページを表示するコード

特集1 Linuxパーフェクトカスタマイズ(Vol.59掲載)

投稿日:2019.03.25 | カテゴリー: コード

著者:麻生二郎

Linuxには、「ディストリビューション」と呼ばれるさまざまな種類があります。しかし、その中から自分の好みに合ったものを見つけるのは意外と困難です。そこで、軽量なLinuxディストリビューション「Lubuntu」のインストールメディアをカスタマイズして、自分好みのLinuxディストリビューションを手に入れましょう。

シェルスクリプトマガジン Vol.59は以下のリンク先でご購入できます。

図27 スライドショーの設定を書き換える箇所

Node.js/Expressで楽々Webアプリ開発(Vol.59掲載)

投稿日:2019.03.25 | カテゴリー: コード

著者:しょっさん

プログラミング言語「JavaScript」の実行環境「Node.js」と「Express」フレームワークを使って、基本となるWebアプリの開発手法を習得しましょう。最終回は、サンプルの「蔵書管理アプリケーション」の課題を解決し、「SPA」(Single Page Application)として実装します。

シェルスクリプトマガジン Vol.59は以下のリンク先でご購入できます。

図2 認証時にアクセストークンを発行する部分のプログラム

図3 URLへのアクセスしたときのアクセストークンの検査部分のプログラム

図4 カスタムコールバックを作成している部分のプログラム

図5 表現に合わせてJSON形式で返却する

図6 エラー画面をJSON形式に変更する

図7 テストコードを変更する

香川大学SLPからお届け!(Vol.58掲載)

投稿日:2019.01.25 | カテゴリー: コード

著者:竹原 一駿
2018年秋に広島と香川で「オープンソースカンファレンス」(OSC)が開催されました。SLPは、両OSCでブースを出展し、OSC香川では3人の学生がライトニングトーク(LT)を行いました。今回は、これらの活動の内容や、それによって得られた体験などについて報告します。OSCへの一般参加や出展などを考えている読者の方の参考になれば幸いです。

シェルスクリプトマガジン Vol.58は以下のリンク先でご購入できます。

図2 自作コンテナエンジンのソースコードの一部
unshareシステムコールによるLinux Namespaceの分離
fork/execシステムコールによるコンテナ内子プロセス生成
図5 「数字に隠された真実」のソースコードの一部
数値を1桁ずつ分解して、すべての和を求める関数
数値を1桁ずつ分解して、すべての積を求める関数
図9 サーバー監視システムのソースコードの一部

Vol.58 補足情報

投稿日:2019.01.25 | カテゴリー: コード

Techパズル 第11回

「タテのカギ」の「18 現実」が抜けていました。お詫びして訂正いたします。

バーティカルバーの極意

p.73のタイトル部分の辰己先生の「己」が「巳」になっていました。お詫びして訂正いたします *

* 2019年1月25日に掲載した訂正情報にも誤りがあり、当該の先生にもご迷惑をおかけしたことをお詫び申し上げます。

情報は随時更新致します。

シェルスクリプトマガジンvol.58 Web掲載記事まとめ

投稿日:2019.01.25 | カテゴリー: コード

シェルスクリプトマガジン Vol.58で掲載しているコードをまとめています。

プレゼント&アンケートページはこちら

シェルスクリプトマガジン Vol.58は以下のリンク先でご購入できます。

004 レポート Linuxカーネル5.0
005 レポート Microsoft社のProject Mu
006 NEWS FLASH
008 特集1 オープンソースのデータベース管理システム MySQL入門/梶山隆輔
030 特集2 ラズパイでBASIC/土肥毅大、岡優樹、納富志津
040 特別企画 kintoneで作る交通費申請システム/佐山ウィリアム 明裕、ぺそ、檀原由香子
050 ラズパイセンサーボードで学ぶ 電子回路の制御/米田聡  コード掲載
055 姐のNOGYO
056 中小企業手作りIT化奮戦記/菅雄一
062 円滑コミュニケーションが世界を救う!/濱口誠一
064 「Visual Studio Code」を便利に使う/山本美穂
068 新年号/桑原滝弥・イケヤシロウ
070 バーティカルバーの極意/飯尾淳
076 法林浩之のFIGHTING TALKS/法林浩之
078 漢のUNIX/後藤大地
084 人間とコンピュータの可能性/大岩元
086 機械学習のココロ/石井一夫  コード掲載
092 Node.js/Expressで楽々Webアプリ開発/しょっさん  コード掲載
100 香川大学SLPからお届け!/竹原一駿  コード掲載
106 UNIXの歴史を振り返る/古寺雅弘
114 ユニケージ新コードレビュー/技術研究員
120 Techパズル/gori.sh
122 コラム「仕事座右の銘」/シェル魔人

Node.js/Expressで楽々Webアプリ開発(Vol.58掲載)

投稿日:2019.01.25 | カテゴリー: コード

著者:しょっさん
プログラミング言語「JavaScript」の実行環境「Node.js」と「Express」フレームワークを使って、基本となるWebアプリの開発手法を習得しましょう。第4回は「蔵書管理アプリケーション」のサンプルプログラムで認証機能を実現す
る方法を解説します。

シェルスクリプトマガジン Vol.58は以下のリンク先でご購入できます。

図3 「models/user.js」ファイルにLibrariesテーブルとの関係性を追記
図4 モデルファイル「models/library.js」の修正
図5 マイグレーションファイルの追記内容
図6 作成したseed(日付-demo-user.js)
図8 passportストラテジの定義
図9 セッション連携の関数「serializeUser」と「deserializeUser」
図10 ミドルウエアで認証済みか否かの判定
図11 テストコード(supertest-spec.js)の主要部分

機械学習のココロ(Vol.58掲載)

投稿日:2019.01.25 | カテゴリー: コード

著者:石井 一夫
今回は、機械学習による2値分類の方法を紹介します。映画評論のテキストを好評価な内容か悪い評価の 内容かに分類するという例題のTensorFlowのチュートリアルマニュアルに沿って、2値分類のモデリングの定番である「ロジスティック回帰分析」について解説します。

シェルスクリプトマガジン Vol.58は以下のリンク先でご購入できます。

図4 ライブラリのインポートとIMDBデータセットの取り込み
図5 IMDBデータセットの中身を表示するコード
図6 元の単語を表示する関数を定義するコード
図7 データをテンソル化するコード
図8 学習モデルを構築するコード
図10 モデルをコンパイルするコード
図11 訓練用データセットを分割するコード
図12 モデルの訓練用コード
図13 モデルの性能評価用コード
図14 損失のグラフを表示するコード
図16 精度のグラフを表示するコード

ラズパイセンサーボードで学ぶ電子回路の制御(Vol.58掲載)

投稿日:2019.01.25 | カテゴリー: コード

著者:米田 聡
シェルスクリプトマガジンでは、小型コンピュータボード「Raspberry Pi」(ラズパイ)向けのセンサー搭載拡張ボード「ラズパイセンサーボード」を制作しました。第5回では、このボードを使った電子回路制御を取り上げます。具体的には、明るさ・近隣センサーに近づく物体の検出です。

シェルスクリプトマガジン Vol.58は以下のリンク先でご購入できます。

図3 割り込みに対応したVCNL4020ライブラリ(VCNL4020.py)
図4 物体が近づいたら割り込みを発生させるサンプルプログラム(simpletest.py)

Python標準モジュール9選(Vol.57掲載)

投稿日:2018.11.25 | カテゴリー: コード

著者:降籏洋行、西川公一朗

Pythonには、豊富な機能を備える標準ライブラリが用意されています。しかし機能豊富すぎるが故に、初心者にとっては「この標準ライブラリモジュールは、実際の開発において、こういう時に役に立つ」という情報を探しにくかったり、リファレンスの説明だけだと使用方法をイメージしづらかったりします。本特集では、知っておくと役立つ便利な標準ライブラリモジュール9個を厳選して、その活用法を紹介します。

シェルスクリプトマガジン Vol.57は以下のリンク先でご購入できます。

 

特集1 ラズパイでセンサーを使う(Vol.57掲載)

投稿日:2018.11.25 | カテゴリー: コード

著者:米田聡、麻生二郎

シェルスクリプトマガジンでは、小型コンピュータボード「Raspberry Pi」のオリジナル拡張ボード第2弾として「ラズパイセンサーボード」を製作しました。サンプルプログラムで、搭載されている湿温度・気圧センサー、
ガスセンサー、照度センサーの使い方を紹介します。

シェルスクリプトマガジン Vol.57は以下のリンク先でご購入できます。

漢のUNIX(Vol.57掲載)

投稿日:2018.11.25 | カテゴリー: コード

著者:後藤大地

これまで、JSONデータを読み込んで処理する方法を取り上げてきた。JSONデータをパースしながら処理する方法や、メモリー上に展開したJSONデータを、指定したフォーマットで出力する方法を解説した。今回も引き続き同じ「Jansson」ライブラリを使うが、JSONデータを読み込んで処理するのではなく、生成する方法を紹介する。

シェルスクリプトマガジン Vol.57は以下のリンク先でご購入できます。

 

シェルスクリプトマガジンvol.57 Web掲載記事まとめ

投稿日:2018.11.25 | カテゴリー: コード

シェルスクリプトマガジン Vol.57で掲載しているコードをまとめています。

プレゼント&アンケートページはこちら

シェルスクリプトマガジン Vol.57は以下のリンク先でご購入できます。

004 レポート LPI-Japanインタビュ
005 レポート 第34回のTechLION開催
006 NEWS FLASH
008 特集1 ラズパイでセンサーを使う/米田聡、麻生二郎 コード掲載
020 特集2 Python標準モジュール9選/降籏洋行、西川公一朗 コード掲載
038 特集3 Adobe XD CCに触れてみよう/湯口りさ、北村崇
052 特別企画 セキュリティ人材不足を解決する/園田道夫
058 c人間とコンピュータの可能性/大岩元
060 UNIXの歴史を振り返る/古寺雅弘
066 法林浩之のFIGHTING TALKS/法林浩之
068 スズラボ通信/すずきひろのぶ コード掲載
073 姐のNOGYO
074 バーティカルバーの極意/飯尾淳 コード掲載
080 RESEARCHES FOR FUTURE/飯尾淳
082 中小企業手作りIT化奮戦記/菅雄一
088 円滑コミュニケーションが世界を救う!/濱口誠一
090 「Visual Studio Code」を便利に使う/山本美穂 コード掲載
094 香川大学SLPからお届け!/飯國隆志 コード掲載
098 統合/桑原滝弥・イケヤシロウ
100 アジャイル開発 Let’s Practice!/熊野憲辰
104 Node.js/Expressで楽々Webアプリ開発/しょっさん コード掲載
112 漢のUNIX/後藤大地 コード掲載
122 ユニケージ新コードレビュー/村本禎実 コード掲載
128 Techパズル/gori.sh
130 コラム「世の中の流れとは別に」/シェル魔人

「Visual Studio Code」を便利に使う(Vol.57掲載)

投稿日:2018.11.25 | カテゴリー: コード

著者:山本美穂

米Microsoft 社発のオープンソースエディタ「Visual Studio Code」には「Extension」と呼ばれる機能拡張用のソフトウエアが多数提供されています。本連載では便利なExtension の使い方を中心に紹介します。第1回は、PaaS「Azure App Service」と連携できるExtension です。

シェルスクリプトマガジン Vol.57は以下のリンク先でご購入できます。

 

バーティカルバーの極意(Vol.57掲載)

投稿日:2018.11.25 | カテゴリー: コード

著者:飯尾淳

バーティカルバー(垂直棒)の集合体「バーコード」の読み取りに挑戦します。すでに、スマートフォンのアプリなどでは、カメラでバーコードを認識する機能が当たり前になっています。この機能を自前のアプリに組み込むことができれば、いろいろな応用が考えられそうです。そのためにも、まずは、バーコード写真を読み込んで認識する基本的な機能を実現してみましょう。

シェルスクリプトマガジン Vol.57は以下のリンク先でご購入できます。

 

Vol.57 補足情報

投稿日:2018.11.25 | カテゴリー: コード

特集1「ラズパイでセンサーを扱う」

p.14の下から12行目、p.17の下から5行目、図23のキャプションの「smaple.py」は「sample.py」の誤りです。

お詫びして訂正いたします。

情報は随時更新致します。

香川大学SLPからお届け!(Vol.57掲載)

投稿日:2018.11.25 | カテゴリー: コード

著者:飯國 隆志

前回は、我々が開発した小規模利用向けプライベートPaaS「LiPP」の概要と環境構築手順を紹介しました。LiPPは、ユーザーが開発したアプリケーションをDockerコンテナ上にリリースする機能を提供します。またLiPPは、GitHubと連携して、リポジトリにpushしたアプリケーションを自動的にデプロイできます。今回は、前回構築したLiPP環境に、サンプルWebアプリをデプロイする手順を紹介します。

シェルスクリプトマガジン Vol.57は以下のリンク先でご購入できます。

 

スズラボ通信(Vol.57掲載)

投稿日:2018.11.25 | カテゴリー: コード

著者:すずきひろのぶ

前回は、Arduino IDEを使って、中国Espressif Systems社のSoC「ESP32」を搭載する開発ボード「ESP32-DevKitC v2」で動作するサンプルプログラムを作成しました。今回は、前回作成したサンプルプログラムを省電力化してみます。

シェルスクリプトマガジン Vol.57は以下のリンク先でご購入できます。

 

Node.js/Expressで楽々Webアプリ開発(Vol.57掲載)

投稿日:2018.11.25 | カテゴリー: コード

著者:しょっさん

プログラミング言語「JavaScript」の実行環境「Node.js」と「Express」フレームワークを使って、基本となるWebアプリの開発手法を習得しましょう。第3回は「テストファースト」(最初にテストプログラムを作る)を意識したテストコードの作成方法を解説します。

シェルスクリプトマガジン Vol.57は以下のリンク先でご購入できます。

ユニケージ新コードレビュー(Vol.57掲載)

投稿日:2018.11.25 | カテゴリー: コード

著者:村本 禎実

ユニケージでは、小さな道具の「コマンド」をシェルスクリプトで組み合わせて、さまざまな業務システムを構築しています。本連載では、毎回あるテーマに従ってユニケージによるシェルスクリプトの記述例を分かりやすく紹介します。第4回は、Webブラウザからデータを参照・削除するためのサーバー側の処理です。

シェルスクリプトマガジン Vol.57は以下のリンク先でご購入できます。

 

ラズパイ入門ボードで学ぶ電子回路の制御(Vol.56)

投稿日:2018.09.25 | カテゴリー: コード

著者:米田 聡

シェルスクリプトマガジンでは、小型コンピュータボード「Raspberry Pi」(ラズパイ)のプログラミングが楽しめる拡張ボード「ラズパイ入門ボード」を制作しました。本連載では、ラズパイ入門ボードを使った電子回路制御を取り上げていきます。第4 回は、赤外線レシーバを扱います。

シェルスクリプトマガジン Vol.56は以下のリンク先でご購入できます。

漢のUNIX(Vol.56掲載)

投稿日:2018.09.25 | カテゴリー: コード

著者:後藤 大地

プログラムでJSONデータを自動処理する場合、フォーマットはどうでもよい。ただし、人間が読むとなると、フォーマットを変換して整理する必要がある。整理されていないJSONデータは、人間にはあまりにも読みにくいからだ。自分の読みやすいようにJSONデータを変換するコマンドといったものが、Janssonライブラリを利用すると簡単に開発できる。これが今回のテーマである。

シェルスクリプトマガジン Vol.56は以下のリンク先でご購入できます。

香川大学SLPからお届け!(Vol.56掲載)

投稿日:2018.09.25 | カテゴリー: コード

著者:飯國 隆志

アプリケーションの開発やデプロイを容易にするPaaS(Platform as a Service)は非常に便利なサービスです。しかし、Google App Engineや、Herokuなどのパブリッククラウドサービスは、料金体系や学習コストの面から、サークルで利用するには難がありました。そこで、プライベートで構築できるPaaS「LiPP」を開発しました。今回から数回にわたってLiPPの利用方法を紹介します。

シェルスクリプトマガジン Vol.56は以下のリンク先でご購入できます。

 

スズラボ通信(Vol.56掲載)

投稿日:2018.09.25 | カテゴリー: コード

著者:すずき ひろのぶ

今回は、開発ボード「ESP32-DevKitC v2」の省電力モードに挑戦してみた奮戦記の前半部分です。プログラミング設定から、まずWi-Fiが動くまでの流れを追ってみます。次回は、省電力のためにDeep SleepやLight Sleepに移行した際にWi-Fiはどんな動作となるのかを試行錯誤した結果を紹します。

シェルスクリプトマガジン Vol.56は以下のリンク先でご購入できます。

Node.js/Expressで楽々Webアプリ開発(Vol.56掲載)

投稿日:2018.09.25 | カテゴリー: コード

著者:しょっさん

プログラミング言語「JavaScript」の実行環境「Node.js」と「Express」フレームワークを使って、基本となるWebアプリの開発手法を習得しましょう。第2回は「蔵書管理アプリケーション」を作成しながら、少し複雑なデータベースを扱う方法を紹介します。

シェルスクリプトマガジン Vol.56は以下のリンク先でご購入できます。

 

シェルスクリプトマガジンvol.56 Web掲載記事まとめ

投稿日:2018.09.25 | カテゴリー: コード

シェルスクリプトマガジン Vol.56で掲載しているコードをまとめています。

プレゼント&アンケートページはこちら

シェルスクリプトマガジン Vol.56は以下のリンク先でご購入できます。

004 レポート バッファローの新無線LANブランド
005 レポート パッケージ管理システム「Flatpak 1.0」
006 NEWS FLASH
008 特集1 Zabbix入門/寺島広大、田中敦
029 姐のNOGYO
030 特集2 「HCI」に乗り遅れるな!/羽鳥正明
038 特集3 Visual Studio Codeを使おう/山本美穂 コード掲載
048 特別企画 シェルスクリプトで作るTwitter bot/Piro(結城洋志) コード掲載
056 ラズパイ入門ボードで学ぶ電子回路の制御/米田聡  コード掲載
060 スズラボ通信/すずきひろのぶ コード掲載
064 機械学習のココロ/石井一夫 コード掲載
068 中小企業手作りIT化奮戦記/菅雄一
072 人間とコンピュータの可能性/大岩元
074 バーティカルバーの極意/飯尾淳 コード掲載
080 RESEARCHES FOR FUTURE/米澤拓郎
082 香川大学SLPからお届け!/飯國隆志 コード掲載
086 円滑コミュニケーションが世界を救う!/濱口誠一
088 漢のUNIX/後藤大地 コード掲載
096 法林浩之のFIGHTING TALKS/法林浩之
098 アジャイル開発 Let’s Practice!/熊野憲辰
102 Node.js/Expressで楽々Webアプリ開発/しょっさん コード掲載
110 ユニケージ新コードレビュー/村本禎実 コード掲載
116 統合/桑原滝弥・イケヤシロウ
118 Techパズル/gori.sh
120 コラム「世の中の流れとは別に」/シェル魔人

Vol.56 補足情報

投稿日:2018.09.25 | カテゴリー: コード

目次

p.2の「雄大」は「広大」の誤りです。

Node.js/Expressで楽々Webアプリ開発

p.106の10行目にある「外部キー({{ foreignKey: ‘book_id’ })」は、「外部キー({ foreignKey: ‘book_id’ })」の誤りです。

ユニケージ新コードレビュー

p.110の注釈(*1)にある「https://github.com/shellscript-magazine/newcodereview/201810/」は、「https://github.com/shellscript-magazine/newcodereview」の誤りです。

p.112の本文の最終行にある「プロセスID-name」は「プロセスID-flg」の誤りです。

 

以上、お詫びして訂正いたします。

特別企画 シェルスクリプトで作る Twitter bot(Vol.56掲載)

投稿日:2018.09.25 | カテゴリー: コード

著者:結城 洋志

つぶやき投稿サイト「Twitter」に自動でつぶやくBot「Twitter bot」を、Bash
のシェルスクリプトで作ってみましょう。このTwitter botは、日経Linuxで好評
連載中の人気まんが「シス管系女子」の著者である私自身が作成し、シス管系女子宣伝用アカウントでも利用しています。

シェルスクリプトマガジン Vol.56は以下のリンク先でご購入できます。

 

機械学習のココロ(Vol.56掲載)

投稿日:2018.09.25 | カテゴリー: コード

著者:石井一夫

今回は、人工知能プラットフォーム「TensorFlow」のインストール手順と、TensorFlow を使った機械学習と画像分析の一例を紹介します。TensorFlow をベースにした機械学習環境の構築や利用には、やや難易度の高い作業がかつては必要でした。しかし最近、ニューラルネットワークライブラリの「Keras」が開発されたことで、非常に楽になっています。

シェルスクリプトマガジン Vol.56は以下のリンク先でご購入できます。

バーティカルバーの極意(Vol.56掲載)

投稿日:2018.09.25 | カテゴリー: コード

著者:飯尾 淳

本連載の第2 回(2017 年6 月号掲載)では、SNS(Facebook)のデータを分析しました。そこでは、投稿時間別のヒストグラムを作り、自分が何時頃によく投稿しているのかを考えてみました。今回は、バーティカルバー(垂直の棒)による代表的な表現に立ち戻り、再度、ヒストグラムを描いて分析してみましょう。分析の対象は、会議録です。国会議員による発言の状況を、ざっくりと捉えてみようという試みです。

シェルスクリプトマガジン Vol.56は以下のリンク先でご購入できます。

Visual Studio Codeを使おう(Vol.56掲載)

投稿日:2018.09.25 | カテゴリー: コード

著者:山本 美穂

高機能、クロスプラットフォームで最近話題になっている、米Microsoft 社
発のオープンソースのエディタ「Visual Studio Code」。その概要、導入方法、画面構成や基本操作、カスタマイズ、デバックなど、便利な機能を含めながらVisual Studio Code を紹介します。

シェルスクリプトマガジンvol.56は以下リンク先でご購入できます。

 

ユニケージ新コードレビュー(Vol.56掲載)

投稿日:2018.09.25 | カテゴリー: コード

筆者:村本 禎実

ユニケージでは、小さな道具の「コマンド」をシェルスクリプトで組み合わせて、さまざまな業務システムを構築しています。本連載では、毎回あるテーマに従ってユニケージによるシェルスクリプトの記述例を分かりやすく紹介します。第3回は、Webブラウザからデータを登録するためのサーバー側の処理です。

シェルスクリプトマガジン Vol.56は以下のリンク先でご購入できます。

 

もっと見る

新しい記事一覧へ戻る

  • カテゴリー コード のアーカイブを表示しています。

  • -->