NAKAMURA Minoru の日記 (2018年12月)

先月の日記(2018年11月) 今月の日記(2018年12月)
2002 | 10 | 11 | 12
2003 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2004 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2005 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2006 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2007 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2008 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2009 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2010 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2011 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2012 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2013 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2014 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2015 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2016 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2017 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2018 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2019 | 1
ホームページ | 最新のコメント50
インデックス: 食べ歩き | Java | プログラム | UNIX | 画像
最新の日記へのリンク | この日記ページをはてなアンテナに追加 この日記ページをはてなブックマークに追加
はてな ダイアリー アンテナ ブックマーク ブログ
Twitter | mixi | Facebook | Google+
slideshare | github | Qiita



12/29 (土)

[Food] CHEGA+MAIS@川崎

川崎にもシュラスコのお店があると知り前々から行ってみたかったが2018年の肉の食い納めに行ってみる。 CHEGA+MAIS(シェーガマイス)(公式食べログ)という店で、川崎駅からは結構離れている。

昼一で行ったのだが、自分ともう一組しか客がいない。 そのため肉を次々出してもらえるし、1度にたくさんもらえるので、一巡でお腹がいっぱいに。

焼きパイナップルが美味し。


12/27 (木)

宇都宮に出張

宇都宮に出張。 武蔵小杉から湘南新宿ラインで1本だが、それでは遅すぎるので大宮から新幹線に乗り換えるつもりで構内で特急券を購入。 しかし武蔵小杉は PASMO で乗っているため、PASMO + 特急券は無理だと弾かれる orz。

[Food] 味噌と餃子の青源@宇都宮

出張後に餃子を食べようと宇都宮駅に隣接するパセオという商業ビル内にあった『青源』(公式食べログ)に行く。 ネギの大量にかかった餃子を食べる。

ネギの成分が強くて餃子のガッツ感がなくてやや微妙。


12/21 (金)

[Movie] シュガー・ラッシュ:オンライン

109シネマ川崎で『シュガー・ラッシュ:オンライン』(原題: Ralph Breaks the Internet)の2D吹き替え版を観る。

1作目は2013年3月に公開されているが、劇中でも6年が経過している設定。 「シュガー・ラッシュ」の筐体を開発した企業は倒産しているとか設定がブラック過ぎる。


12/15 (土)

[Movie] グリンチ

チネチッタで『グリンチ』(原題: The Grinch)の吹き替え版を観る。

30年ぐらい前に英語の授業で1966年のアニメ版を観たことがある。 その映画は毎年クリスマスの時期に流されると聞かされた。 イルミネーションは3D化したがあらすじは大きく変えてこなくて、村の様子なども1966年アニメ版の雰囲気にそっくりだ。 このあたりは原作を木っ端微塵に改変してくるディズニー映画との違いか。 イルミネーションの3Dアニメ映画は『SING/シング』(原題: Sing)や『ペット』(原題: The Secret Life of Pets)を観ても脚本が練れてないと感じるが、原作に沿っているのでグリンチはまあ普通のシナリオの運びだった。


12/14 (金)

シェルスクリプトの中で XML の任意の要素の抽出をワンライナーで書く

Maven の設定ファイル pom.xml の中のバージョン番号(<version>0.3.6-2</version>)をシェルスクリプトで取り出そうとしたが、sed、perl、grep などいろいろ調べたが存外難しいことが分かった。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

  <modelVersion>4.0.0</modelVersion>

  <groupId>group-name</groupId>
  <artifactId>artifact-id</artifactId>
  <packaging>jar</packaging>
  <version>0.3.6-2</version>
  <name>project-name</name>

  ...

sed の場合

sed を使った場合、正規表現でマッチしたものを取り出すことはできる。 しかしこの実行結果は以下のようなる。 sed はテキストファイル中の各行に対して処理するので、マッチしない行の扱いが残ってしまう。

$ cat pom.xml | sed -e 's/<version>\([0-9]\+\.[0-9]\+\.[0-9]\+\)-[0-9]\+<\/version>/\1/g'
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

  <modelVersion>4.0.0</modelVersion>

  <groupId>group-name</groupId>
  <artifactId>artifact-id</artifactId>
  <packaging>jar</packaging>
  0.3.6-2
  <name>project-name</name>

  ....

grep の場合

grep はファイル全体が対象である。 -E オプションがあり正規表現が記述できる。 これに -o オプションを使うとマッチした部分だけを取り出すことができる。 2行目のように -E の替わりに -P を使うと、Perl の正規表現が使えコンパクトにできる。

$ grep -oE '<version>[0-9]+\.[0-9]+\.[0-9]+-[0-9]+</version>' pom.xml
$ grep -oP '<version>\d+\.\d+\.\d+-\d+</version>' pom.xml

この結果は以下のように取り出せるが、数値だけを取り出すことはできない。 <version>([0-9]+\.[0-9]+\.[0-9]+-[0-9]+)</version>のように括弧で囲っても効果なし。

解決

結局、テキストファイル中の全ての改行を削除して1行のデータとし、その後に正規表現による抜き出しをするという解決を図った。 負けた気分。

$ cat pom.xml | perl -pe 's/\n//g'| sed -e 's/^.*<version>\([0-9]\+\.[0-9]\+\.[0-9]\+-[0-9]\)<\/version>.*$/\1/g'
コメントを書き込む
[1] [soda] 2018-12-17 10:17:08
これでよければsedでできますね。
sed -n \'s/^.*<version>\\([0-9]\\+\\.[0-9]\\+\\.[0-9]\\+\\)-[0-9]\\+<\\/version>.*$/\\1/gp\' pom.xml
でいいのではないでしょうか。
-n でデフォルトの出力を抑制して、sコマンドの p オプションで、マッチした行だけを出力させています。
[2] [soda] 2018-12-17 10:19:13
およよ、入力時は問題なかったと思うんですが、コメント表示されると \\ が増殖してしまいました。^^;

[3] [nminoru] 2018-12-17 18:16:48
ありがとうございます。
sed 1コマンドのワンライナーで抽出ができました。

12/2 (日)

[Movie] くるみ割り人形と秘密の王国

チネチッタで『くるみ割り人形と秘密の王国』(原題: The Nutcracker and the Four Realms)で吹き替え版を観る。 これもディズニー実写映画にありがちな原作とはほとんど関係ないレベルに改変された映画だった。

途中、黒人ダンサーによるバレーダンスが挟まれるが、エンディングでも同じようにダンスシーンがあるのが印象的。


12/1 (土)

Qiita にブログを書いてみる

放置していた自分の Qiita にブログ記事を書いてみることにする。

とりあえず少し前から調べていた Nexus Repository Manager 3.0 の記事を記述してみる。

いろいろ使えない記法が多くてもどかしい。


先月の日記(2018年11月) 今月の日記(2018年12月)
2002 | 10 | 11 | 12
2003 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2004 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2005 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2006 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2007 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2008 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2009 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2010 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2011 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2012 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2013 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2014 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2015 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2016 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2017 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2018 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12
2019 | 1
ホームページ | 最新のコメント50
インデックス: 食べ歩き | Java | プログラム | UNIX | 画像
最新の日記へのリンク | この日記ページをはてなアンテナに追加 この日記ページをはてなブックマークに追加
はてな ダイアリー アンテナ ブックマーク ブログ
Twitter | mixi | Facebook | Google+
slideshare | github | Qiita


Written by NAKAMURA Minoru, Email: nminoru atmark nminoru dot jp, Twitter:@nminoru_jp