いろいろ備忘録日記

主に .NET とか Java とか Python絡みのメモを公開しています。最近Go言語勉強中。

ターミナル上で通算秒を扱う際のコマンドメモ

概要 概要 ついでに、よく忘れるコマンドのメモ。 バイナリデータを扱ったりする際、今でもよく通算秒を使います。 そんなとき、dateコマンドさん使うと楽です。 現在の通算秒を見るには $ date +"%s" 1579838347 で見れます。 逆に通算秒を日付書式に戻す際…

ターミナル上でcsvファイルを見る際のコマンドメモ

概要 CSVファイルを見やすくするコマンド 参考情報 概要 私の場合、たまに以下のような状況があります。。。 OSはLinux。でも何故か文字コードがShift-JISで作られた列がめっちゃ多いCSVファイルがあって、その中に重要な値が記載されている。その値を見たい…

Windows10メモ (WSL(Ubuntu) 初期設定メモ)

概要 概要 ちょこちょこいじってたら、環境ぶっ壊してしまったので再インストール。。。 初期設定関連を毎回思い出すの面倒なので、ここにメモメモ。 #!/usr/bin/env bash # ---------------------------------- # WSL (Ubuntu) 初期設定 # ----------------…

Windows10メモ (win+v, shift+右クリック)

概要 貼り付けする際に winキー + v でクリップボード履歴から選択して貼り付けできる エクスプローラーでShiftキー押しながら右クリックでLinuxシェルをその場所から開くことができる 概要 忘れない内にメモメモ。 貼り付けする際に winキー + v でクリップ…

Goメモ-43 (sentry-goをゴルーチン内で利用する場合の注意点)

概要 駄目なパターン 良いパターン 概要 Sentry関連で、これもついでにメモ。 インストールとか基本的な使い方については以下を参照ください。 devlights.hatenablog.com Goではゴルーチンというとても便利な非同期手段があるので よく非同期処理を手軽に書…

Goメモ-42 (sentry-goパッケージを使ってエラー情報をsentryで表示)

概要 インストール サンプル 概要 ログ関連で、これもついでにメモ。 sentry.io 個人的に好きなので、エラートラッキングとかはSentryをよく使っています。 以前は、raven-go という名前でライブラリが提供されていたのですが 最近は sentry-go という形で提…

Goメモ-41 (logパッケージのフラグ設定についてのメモ, log.Flags, log.SetFlags)

概要 サンプル 参考情報 概要 よく忘れるので、忘れないうちにメモメモ。 Goには、ログライブラリとしてlogパッケージが標準装備されています。 他の言語やっていた人間からすると、結構シンプルな形になっているなという印象。個人的には好きですが。 で、…

Goメモ-40 (ビルトイン関数のprintとfmt.Printの違い)

概要 サンプル 概要 大したことじゃないんですが、忘れないうちにメモメモ。 Goには、ビルトイン関数として print() と println() というのが用意されています。 これ、今まで fmtパッケージの方にもあるのに何で存在してるんだろうって思ってました and 使…

Goメモ-39 (ゴルーチン, Goroutines, Tour of Go)

概要 だからって非同期処理が簡単になると言う訳ではない サンプル 概要 Tour of Go の - Goroutines についてのサンプル。 tour.golang.org ついにゴルーチンまできましたね。Goといえば ゴルーチン といえるくらいGoを有名にした機能と思います。 私も例に…

Goメモ-38 (io.Readerインターフェース, Readers, Tour of Go)

概要 サンプル 概要 Tour of Go の - Readers についてのサンプル。 tour.golang.org Goのio.Readerインターフェースは、何かを読み取る基本的なインターフェースです。 このインターフェースを実装している型はとてもいっぱいあります。 インターフェースの…

Goメモ-37 (stringとruneとbyteの変換)

概要 サンプル 参考情報 概要 よく忘れるので、自分用にメモです。 Goの文字列は、 string 型で表現されます。 stringは、文字列をバイト列で持っています。 なので、string に対して、len()するとバイト数が取得できます。 Goの文字は rune 型で表現されま…

Goメモ-36 (スライスのポインタについて)

概要 サンプル 概要 よく忘れるので、自分用にメモです。 Goのスライスは、内部にデータが格納されている配列のポインタを持っています。 なので、通常スライスをポインタで利用する必要は無いと記載されていることが多いです。 ですが、C#やPythonなどでよ…

Goメモ-35 (モジュールのメジャーバージョンを2以降にした場合の取り扱い方について)

概要 メジャーバージョンをアップする場合はライブラリ側のgo.modも変更が必要 tagを作成してなかった テストで使っていたリポジトリをついでにアップしました git tag のメモ 参考情報 概要 自分的に少しハマったので忘れないうちにメモメモ。 自作のモジュ…

Goメモ-34 (モジュールの新しいバージョンをリリースしたのに go list -u -m all しても反映されない件)

概要 原因は GOPROXY に設定されている値 ミラーサイト経由しないように設定してみる 変更した GOPROXY をデフォルト値に戻す 参考情報 概要 自分的に少しハマったので忘れないうちにメモメモ。 自作のモジュールを作っていて、それを利用するプログラムも書…

Goメモ-33 (Go Modules がオンの状態でライブラリ変更してPUSHする前に使われている箇所の当たりをテストしたい)

概要 サンプル m1の方のコードに変更が入った go.mod に replace 設定を追加する go.mod の replace 設定を削除する 参考情報 概要 タイトルがクソ長いですが、忘れないうちにメモメモ。 go mod をオンにしている状態(Go1.13だとデフォルトがオン)で 他で…

Goメモ-32 (エラー, Errors, Tour of Go)

概要 サンプル 概要 Tour of Go の - Errors についてのサンプル。 tour.golang.org Goのエラー処理の仕組みはとてもシンプル。C#やJavaやPythonのように例外という概念が意図的に存在しません。 (panicとrecoverという概念もありますが、あれは別のものとし…

Pythonメモ-115 (Excelの特定シートのフッターの値を調整するスクリプト)

まえがき 概要 ソース まえがき devlights.hatenablog.com devlights.hatenablog.com devlights.hatenablog.com の続きです。。。ご覧なっていない場合は先に上を御覧くださいませー。 概要 仕事上、大抵の人はWindowsで作業してて、大抵の人はExcelで資料と…

Rider 2019.3 で T4 テンプレートが正式サポート

概要 参考情報 概要 Rider 2019.3 がリリースされましたね。 で、このバージョンから遂にT4テンプレートが正式サポートされました。待ってました! www.jetbrains.com macとかlinuxでも使えたらいいなーって思ってたんですが All these features work on Win…

Goメモ-31 (型判定switch, Type Switch, Tour of Go)

概要 サンプル 概要 Tour of Go の - Type Switch についてのサンプル。 tour.golang.org 前回、Goの型検証という仕組みついて書きました。 devlights.hatenablog.com インターフェースと特定の具象型、もしくは別のインターフェース型に変換可能か検証して…

Goメモ-30 (型検証, Type Assertions, Tour of Go)

概要 サンプル 概要 Tour of Go の - Type Assertions についてのサンプル。 tour.golang.org 今回は、型検証について。 Goにも、他の言語でもある型検証の仕組みが存在します。 オブジェクト指向な言語では、よくインターフェースの型を特定の具象型に変換…

Homebrewのanalyticsをオプトアウトする方法

mac

概要 概要 たまたま、Homebrew入れ直したら出てきたので忘れないうちにメモメモ。前やってたのにすっかり忘れていたので。 いつからか、忘れましたがHomebrewってGoogle Analyticsを利用してユーザの情報を匿名情報として収集するようになってます。 docs.br…

vimで最短一致で検索 (vim用の正規表現)

vim

概要 概要 いつも忘れているので、ここにメモ。 正規表現で最短一致で検索する場合 hoge*? ってやればいいんですが、vimはちょっと特殊な形になってて hoge.\{-} ってやらないといけない。これをいつも忘れますw 例えば、以下のなんとなーくよくありそうな…

Goメモ-29 (空構造体, Empty struct)

概要 サンプル 参考情報 概要 ちょっと前に空インターフェースについて書いたので devlights.hatenablog.com ついでに、今回は空構造体についてもメモ。 空のインターフェースという型が存在するので、実は空の構造体という型もあります。 空インターフェー…

Goメモ-28 (GoLand 2019.3, チュートリアルプロジェクト, ショートカットメモ)

概要 このチュートリアルやって覚えたこと(随時追加) 概要 普段、Goのソース書くのに MacとWindowsでは GoLand 使っています。(chromebookでは、vim) 最近、最新バージョンである 2019.3 がリリースされました。 blog.jetbrains.com 全体的に動作がキビキ…

Goメモ-27 (空インターフェース, Empty interface, Tour of Go)

概要 サンプル インターフェースの合成について 概要 Tour of Go の - Empty interfaces についてのサンプル。 tour.golang.org 今回は、空インタフェースについて。 Goには、interface{}という型があります。空インターフェースといいます。 この型、他の言…

Goメモ-26 (インターフェース, Interface, Tour of Go)

概要 インターフェースとnilの関係 サンプル 概要 Tour of Go の - Interfaces についてのサンプル。 tour.golang.org 今回は、Goのインタフェースについて。 インターフェースって聞くと、身構える人もいるかもしれませんね。。 オブジェクト指向絡みの本と…

Goメモ-25 (メソッド, Methods, Tour of Go)

概要 レシーバの種類 (値レシーバとポインタレシーバ) サンプル 概要 Tour of Go の - Methods についてのサンプル。 tour.golang.org Goには、クラスの仕組みがありません。C#やJavaやPythonなどのように class を定義することが出来ないです。 可能なのは…

vimの3つのビジュアルモード開始コマンドとoコマンド

vim

概要 3つのビジュアルモード ビジュアルモード中の o コマンド 概要 vimのビジュアルモードの操作方法について、忘れないうちにメモメモ。 最近、久しぶりに vim 使っているのですが、やっぱりこのエディタは楽しいですね。 chromebookで遊んでいます。使っ…

Goメモ-24 (マップ, Maps, Tour of Go)

概要 サンプル 概要 Tour of Go の - Maps についてのサンプル。 tour.golang.org Goは、最近の言語らしくマップ(ディクショナリともいう言語もあります)が標準装備です。 型の宣言の仕方がちょっと他の言語と比べると特殊で map[キーの型]値の型 とします…

Goメモ-23 (スライス, Slices, Tour of Go)

概要 サンプル スライスを関数に引数として渡す場合の注意点 スライスのポインタ 概要 Tour of Go の - Slices についてのサンプル。 tour.golang.org Goのスライスは、他の言語でいう 可変長リスト のようなイメージです。 配列の一部をスライスしたものか…