タグ

2016年1月30日のブックマーク (6件)

  • evalで変数名を変数にする@bash

    シェルスクリプトで変数を使用していると、変数名を変数にしたい場合が出てきます。 しかし、以下のようなシェルを書いてもエラーになってしまいます。 #!/bin/bash HOGE_1=1 HOGE_2=2 for i in 1 2; do echo ${HOGE_$i} done ?$ ./hoge.sh ./hoge.sh: line 6: ${HOGE_$i}: bad substitution そこで、evalの登場です。evalは、引数を一度評価してから実行します。つまり、 HOGE="echo hoge" eval $HOGE を実行すると、evalは$HOGEの内容を評価し、”echo hoge”に変換します。さらにこれを実行するので、hogeと表示されます。これを使えば変数名を変数にできます。具体的には、以下のようにします。 #!/bin/bash HOGE_1=1 HOGE_

    evalで変数名を変数にする@bash
    hopekuson
    hopekuson 2016/01/30
  • シェルスクリプトでの$@の罠

    B! 39 0 0 0 シェルスクリプトを書いてる時に$@を使って ハマったのでそれについて。 $@と$* -fや-dの罠 まとめ $@と$* $@はシェルスクリプト 1 ではスクリプトや関数の中で全ての引数を表します。 $ f(){ echo $@;} $ f a b c a b c な感じ。 ここで、次の様なスクリプトを考えてみます。 atmark.sh 1 2 3 4 5 6 #!/usr/bin/env bash if [ "$@" != "" ];then echo "$@" else echo empty fi これを実行してみると $ ./atmark.sh a a $ ./atmark.sh ./atmark.sh: line 2: [: unary operator expected empty! $ ./atmark.sh a b ./atmark.sh: line 2

    シェルスクリプトでの$@の罠
    hopekuson
    hopekuson 2016/01/30
  • OpenWeatherMapをショートコードにして各地の天気を表示 | ゆうそうとITブログ

    OpenWeatherMapを利用して天気情報を取得してみる、でOpenWeatherMapというAPIを使って八王子の天気を表示出来るかどうか、実験してみました。大体はできたのですが、もちょっと汎用的にしたり、表示を分かりやすくしてみたのでそれについて書きます。 天気と天気詳細の日語化をする OpenWeatherMapで戻ってくるお天気情報は英語です。例えば 晴れ なら Clear とか、くもり なら Clouds とかが返ってきているようです。プログラムにする場合はこれらの英語に対する日語を指定しておけばOKです。しかし、そういうときプログラムなので 全部の種類 が分かっていないとだめなのです。だめ、というのは4種類しかないと思って4種類分の日語を用意していても、5種類目が実はあって、という場合に対応する日語を用意していないために日語で表示出来なくなってしまいます。 前回、

    OpenWeatherMapをショートコードにして各地の天気を表示 | ゆうそうとITブログ
    hopekuson
    hopekuson 2016/01/30
  • 人生は夕方から楽しくなる:作家・畑正憲さん - 毎日新聞

    「自炊に凝ってるんです。昨日は、フグちりの余りで作ったカレーがおいしくてねえ」=東京都港区で、内藤絵美撮影 動物愛、ふっと消え 今は小説書きたい 濃いコーヒーをすするのを日課にしている東京・南青山のカフェで、衰えの話を始めた。「32歳でがんで胃を切ってから、体力をつけようと馬に乗り始めたんです。50でも60でも野山を走る『山賊馬術』をやってたんですけど、70になったら全力疾走で腰がずきんずきん痛んで、乗れなくなったんです」 8日間一睡もせずマージャンを打ち続けた記録を持ち、海外ロケでも風邪一つひかなかったスタミナだったが、衰えは脳にも来た。「60まで取材ノートを持たなかったんです。相手の名前や電話番号なんか全部覚えてたのに、思い出せなくなり、いかんなあって思ったんです」 この記事は有料記事です。 残り1575文字(全文1860文字)

    人生は夕方から楽しくなる:作家・畑正憲さん - 毎日新聞
    hopekuson
    hopekuson 2016/01/30
    かっこよすぎる
  • jq コマンドを使う日常のご紹介 - Qiita

    jq コマンドとは http://stedolan.github.io/jq/ JSONから簡単に値を抜き出したり、集計したり、整形して表示したりできるJSON用のgrepとかawkみたいなコマンドです。 WebサービスがJSONを吐いたり、AWS CLIが JSON を吐いたりする現代社会で大変便利なコマンドです。 マニュアル だいたいここ読めばOK. http://stedolan.github.io/jq/manual/ あ、これで、終わってしまう。だけど気にせず進めます。 簡単な例 まず、空気をつかみましょう。 以下jqコマンドの記法を見ていきます。JSON { "hoge": "value" } があった場合、 . がルート {} を表します。.hoge で "value" を表現します。だいたいこんな感じです。 ただの整形 しばらく下記のJSONを例に進めます。itemsには配

    jq コマンドを使う日常のご紹介 - Qiita
    hopekuson
    hopekuson 2016/01/30
  • 3Dプリントでつくる月面基地「Moon Village」が未来的 | 週刊ヤング3D

    2030年までにESAが、月面に村を作る予定です。 こちらの村は、宇宙飛行士が数ヶ月滞在できる施設のようなものです。特徴として、基地の建設としてロボットと3Dプリンターを活用するとのこと。 「MoonVillage」では、建築にあたり、月の土を利用して3Dプリンターで印刷していきます。 ▼「Moon Village」イメージ なんともSFチックなぶっ飛んだ構想ですが、早ければ2020年には開始されるとのこと。今が2016年なので4年後の話…。 ▼作業するロボット ロボットですが、スターウォーズのC3POのようなモデルでなく、シャベルカーに近い感じですね。 ▼筆者が考えていたやつ ▼壁面の耕造 ▼3Dプリンターで製造 月の土を材料にし、直接印刷していきます。 建築、3Dプリンター、ロボットと課題だらけに見えますが、既に実証はされているとのこと。 2013年には月面土壌のシュミレートのため、イ

    3Dプリントでつくる月面基地「Moon Village」が未来的 | 週刊ヤング3D
    hopekuson
    hopekuson 2016/01/30