【Groovy 】文字コードを判別するコード、文字コードを意識せずにファイルを読み込むコードのサンプルを作る中で学んだことのメモ

スポンサードリンク

サンプル

Groovy 全体について学んだこと

“【Groovy 】文字コードを判別するコード、文字コードを意識せずにファイルを読み込むコードのサンプルを作る中で学んだことのメモ” の続きを読む

【Groovy】重複している要素をリストから取得するコード

ポイント

  • リスト全体に各要素が幾つ含まれているかをカウントし、2つ以上あればその要素は重複している、と考える。

重複している要素をリストから取得するコード

// Groovy Version: 2.4.12 JVM: 1.8.0_152 Vendor: Oracle Corporation OS: Windows 7
list = [["a", "a", "a"], ["a", "a", "a"], ["a", "a", "b"], ["a", "a", "c"], ["a", "a", "b"], ["a", "a", "b"]]
println "対象のリスト"
println list

println "重複無しかどうかを判定(重複無し: true, 重複有り: false)"
println list == list.unique(false)

println "重複を削除したリストを取得"
println list.unique(false)

println "重複する要素を抽出したリストを取得"
println list.findAll {
    // 同じ内容の要素の数が 1 個よりも多ければその要素は重複しているため、取得
    list.count(it) > 1
}.unique()

結果

// Groovy Version: 2.4.12 JVM: 1.8.0_152 Vendor: Oracle Corporation OS: Windows 7
対象のリスト
[[a, a, a], [a, a, a], [a, a, b], [a, a, c], [a, a, b], [a, a, b]]
重複無しかどうかを判定(重複無し: true, 重複有り: false)
false
重複を削除したリストを取得
[[a, a, a], [a, a, b], [a, a, c]]
重複する要素を抽出したリストを取得
[[a, a, a], [a, a, b]]

おわりに

重複を除くのであれば、unique() で一発ですけれども、何が重複しているかを取得する関数は Groovy にはありませんでした。

1時間程悩んみましたので、今後のためにメモいたしました。

以上です。


スポンサードリンク

CentOS7 で Git をインストールするシェルスクリプト

手順

yum で git をインストールする。

コマンド

“CentOS7 で Git をインストールするシェルスクリプト” の続きを読む

CentOS7 で Ansible をインストールするシェルスクリプト

手順

  1. SSH 接続で root ユーザになる。
  2. yum-utils をインストールする。
  3. yum で EPEL リポジトリを追加する。
  4. yum-utils で EPEL リポジトリを無効にする。
  5. yum で EPEL リポジトリを指定して Ansible をインストールする。

“CentOS7 で Ansible をインストールするシェルスクリプト” の続きを読む

スマートフォンから ConoHa の VPS を作成した記録

接続許可ポート IPv4、接続許可ポート IPv6 は [全て許可] を選択
手順は PC のブラウザの ConoHa コントロールパネルから操作と同じでした。

次のページからアクセスします。

“スマートフォンから ConoHa の VPS を作成した記録” の続きを読む

【VPS】公開鍵認証による SSH 接続に切り替える手順

VPSならConoHa|登録者数12万アカウント突破 – 期間限定キャンペーン実施中 で VPS を契約する機会がありました。

実は今まで、公開鍵認証による SSH 接続は行ったことがありませんでした><。

今回、実際に行ってみましたのでその手順をノートします。

環境

  • クライアント: Mac
  • サーバ: VPS サービスの ConoHa、512 MB

ポイント

  • 作成する公開鍵、秘密鍵は、クライアントでもサーバでもどちらでも作成しても問題ない。
  • クライアントで公開鍵、秘密鍵を作るほうが楽。ssh-copy-id が使用できるため。

“【VPS】公開鍵認証による SSH 接続に切り替える手順” の続きを読む

スマートフォンから GitHub のリポジトリを作るときのポイント

iOS11 の iPhone 6s plus の Safari から GitHub の新しいリポジトリを作りました。

このとき、PC の GitHub からとほ勝手が異なり素直には作成できませんでしたので注意点をメモします。

“スマートフォンから GitHub のリポジトリを作るときのポイント” の続きを読む

Windows7 の PostgreSQL9.4 のデータベース定義や ER 図を SchemaSpy を導入して自動生成する手順

環境

  • Windows7 Professional 32bit
  • PostgreSQL 9.4
  • JDK 8

“Windows7 の PostgreSQL9.4 のデータベース定義や ER 図を SchemaSpy を導入して自動生成する手順” の続きを読む

Microsoft Visual Studio Community 2015 をアンインストールする記録

[visual studio 2015 アンインストール] で検索してみたが、公式のページはありませんでした。

ですが、Microsoft の GitHub リポジトリにアンインストーラーがあったので使用しました。

“Microsoft Visual Studio Community 2015 をアンインストールする記録” の続きを読む

【Windows】Chocolatey の package.conf ファイルでインストールアプリを管理するメモ

PowerShell メモ

  • アプリのインストール、アップデート時は管理者権限で起動すること。
  • 管理者権限で PowerShell を起動する。
    Windows キー + X -> A

package.conf ファイルでのインストール方法について

  • package.conf ファイルの書き方はじめ、使い方の公式ページ
    CommandsInstall
  • パワーシェルで package.conf ファイルを指定してインストールすれば、ファイル記載のアプリがインストールできる。

“【Windows】Chocolatey の package.conf ファイルでインストールアプリを管理するメモ” の続きを読む