ぎょーぼのぶろぐ

IT系の話を書いていくブログです。今はRubyの勉強中。

2020-10-01から1ヶ月間の記事一覧

【Ruby】require と require_relative

前置き require と require_relative の違いと注意点についてです。 require require は、引数で与えられたファイルパスのファイルを一度だけ呼び出します。このとき、引数のパスは、絶対パスでも相対パスでもOKで、相対パスの場合は、requireが呼ばれた時点…

【Ruby】数値に3桁区切り文字をつける

前置き Ruby で数値に3桁区切りを付加した文字列を取得する Tips です。 やり方 普通に考えると、 下桁から3桁ずつに区切って、 区切り文字を入れる。 それを、桁がなくなるまで繰り返す。 という手順になりますが、Ruby だと一行でできます。(他の言語でも…

【Ruby2.6】__FILE__ を使ってできること

前置き 前回の続きです。 __FILE__ を使って色々な情報を取得してみます。 実行している「ファイル名のみ」を取得する 最後のパス区切り文字以降がファイル名になるので、それを取り出すメソッドを使う、正規表現で抽出したり、文字列加工したりすることで取…

【Ruby2.6】__FILE__ について考える。

前置き Ruby の擬似変数__FILE__について、色々考えます。 そもそも、__FILE__ って何? __FILE__は、「擬似変数」と呼ばれるものの一種です。Webで公開されているリファレンスマニュアルによると・・・ __FILE__ 現在のソースファイル名 フルパスとは限らな…

【ツール作成】メインの流れ

前置き 最初に実行するメインフローの部分です。他の部分はできているので、順にメソッドを呼び出すだけになっています。 実装コード 最初に、必要なモジュール、クラスをrequireで読み込みます。 唯一、system.iniファイルだけは、固定でパスを与えています…

【ツール作成】ファイルコピーを実際に行うモジュール

前置き ファイルのコピーや、ディレクトリの作成を行うモジュール群です。 実装コード 全体のモジュール名は、BackupUtils としています。また、ファイルをコピーする際に、FileUtils.copyを使用するので、fileutils をrequireしています。 module BackupUti…

【ツール作成】Messageモジュールを作る

前置き 今回は、コンソールへのメッセージ出力、ログへの出力を制御する Messageモジュールについてです。 なんでモジュール化? コンソールへの出力なら、puts でいいし、ログ出力も loggerモジュールがあるので、その都度出力すればいいわけですが、今回、…

【ツール作成】Settingクラス関係

前置き ファイルバックアップツールの設定関係を管理するクラスを生成します。 設定の構成 今回は、iniファイルを2つ作っています。 システム自体の設定に関する項目を入れる system.ini 内容は以下のような感じです。 ;system.ini ;ログ出力設定 log_path=…

【ツール作成】プログレスバークラスを作る

前置き プログレスバーのクラスを作ります。 どうやって作る? 作りはとっても単純です。 全体、実行済みの値から、進捗度を計算 進捗度からバーの状態を生成 キャリッジリターン \r を使って、コンソール行を上書きする。 行全体を上書きしますが、一部だけ…

【ツール作成】Inifileモジュールを作る

前置き 設定をiniファイル形式のテキストファイルに書いておき、読み込むためのモジュールを作ります。 Inifile gem を使わなかった理由 最初は、gem にInifileというそのまんま、iniファイルの設定を読み込むための gem があったので、それを使おうと思って…

【ツール作成】最終構成

前置き 読者が誰もいないので、マイペースで書いてます。ついでに【その?】もなくしました。何番まで行くか分からないので。。。 ファイルバックアップツールですが、一応、ちゃんと動作するところまではできました。 ただ、プログラムの構成に自分で納得が…