Awesome Hacks!

プログラミング初心者なので地道に勉強していきます。分からない人の立場から整理していきます。

Windows_純正メモ帳の画期的な使い方

こんな機能があるなんて便利だ!
 
今まで付箋にしていたけど、付箋が増えまくっていたし、
日付も記入しないといつのものか分からないし。。。

で、どうしようとインターネットで対策を調べようとしていたら、
なんと純正メモ帳が便利かも!?と思った。
 
メモ帳に日付を自動記入する [Windowsの使い方] All About
 
自分の使い方になじむか分からないが、
ひとまずこれで試してみようと思う。

PostgreSQL_pgadminでリストア

リストアしようと適当なサイトを参考にしたら
DB名が思ったようにならなかったり、DB削除したのに
削除前のDBを作成できなかったり(自分のせい?)、
他のセッションが使用中とかでてきたりして、
困った。
 
一旦コンパネの「サービス」でpostgresサービスを再起動して、
そのあと、DB削除後に削除された状態を読み込ませるために
一旦pgadminを再起動。
あとはDBそのものを新規作成して、そこにバックアップデータを
ぶちこ・・・リストアした。
 
最初に見たサイトはDBの新規作成はせずにリストアしようとしたからか
うまくいかなかった。
まだリストア中でリストア完了してないので何とも言えないけど、
多分こちら様のサイトを見ると幸せになれる。
 
DBバックアップ(9.1)

シェルスクリプト_関数内の戻り値について

ちゃんと整理ができていなかったので整理。
 

結論だけいうと

関数内でreturnすると戻り値を返す。
関数内でexitすると即時終了する。

ただし、例外あり。

func(){
    exit 1
}

# 関数内でexitしても、関数の呼び出し方が下記だと関数内で終了しないみたい。
RET=`func`

 

ちなみに

理由はざっくり調べただけだけど、どうやら「`」でくくってしまうと、
別のシェル(サブシェル)で実行されてしまい、
exitそのものは「自分自身を終了させる」という処理のため、
別のシェル(サブシェル)として動かした関数のみが終了するため、
呼び元の親シェルは終了しないから、ではないかと思われる。
 

ではどうする?

検討したけどこれといった解決策はなさそう。
やるとしたら以下のどちらかかなあと思う。
 

  1. 関数の戻り値(というより出力結果)として、関数内で処理結果をechoさせ、関数の処理結果でERRORが判定できるようにしておき、関数の呼び元で関数の処理結果を受け取った際に判定してERRORの場合異常終了させる。
  2. 関数を使わない。

 
で、個人的にはERRORチェックのためではなく、ERROR処理のために実装を追加するのは
好ましくないのではと思うことや、関数化すべきメリットが大きくはない
(極端に可読性が悪くなるわけでもないし、関数を呼ぶ回数も1回のみ)ので、
関数を使わないで対応した。
 
うーん。。。でも正直もっといいやり方はないものだろうか。
そもそも、こんな作りって他の言語でもあるはずだし、他の人たちは
みんなどうやっているのだろうか。
でも思いの外そういったことについて検討しているサイトが見つからなかった。。。

Java_日付のフォーマットチェック

parseのフォーマットチェックが思ったように機能してくれない・・・。
なんて思っていたが原因不明だった。
 
しかし、こちらのサイトを見て納得。
DateFormatは前方一致だったのか - syttruの日記