仕事メモとか

仕事中に調べた情報とか知ったことをメモしています。
unixコマンド, vim, oracle, putty, postgresql, bash, EXCEL, python, SQL全般 など。
最近は tableau, movabletype とかも触ったりしています。
雑な読書感想とかはこちら


brew install postgresql で、perl.h がどうのこうのでコケる

はい、macに環境を構築しようと四苦八苦しているのですが、
postgresqlをインストールしようとすると、なんかエラーでコケます。
postgresqlのバージョンは11です。


brew install postgresql
(略)
hecking tcl.h presence... yes
checking for tcl.h... yes
checking for perl.h... no
configure: error: header file is required for Perl

Do not report this issue to Homebrew/brew or Homebrew/core!

どうも、perlでエラーになるようなんですが、原因が良くわからない。

試しに、perlを個別にインストールしてみると上手くいく。
brew install perl

とりあえず単独でperl入れられたから、postgresql上は入れないようにしたい、
と思ってい調べたら、--without-perlというのがあるも、これはバージョン9.6以降は使えない。

ということで、以下の方法で除外したら上手く行きました。

brew edit postgresql
※--with-perl 行を除外

brew install postgresql

pipenv install -d


インストール内容のセットをedit出来るんですね。


参考:
https://github.com/petere/homebrew-postgresql/issues/44
https://github.com/petere/homebrew-postgresql/issues/41
https://github.com/hhvm/homebrew-hhvm/issues/122
https://github.com/Homebrew/linuxbrew-core/pull/13036


puttygenでopenSSHにして、windowsで使っていた鍵をmacでも使う

はい、mac移行中なんですが、各種サーバーに入る方式が地味に違うため、
puttyでやっていたことをmacで出来るように準備中です。

以下の手順で対応しました。


●putty秘密鍵をopenSSHに変更

puttygenを立ち上げて、自分の持ってる鍵(ppkファイル)を読み込み、
conversionsタブから、「Exoprt Open SSH Key」にてopenSSH化

参考
https://www.tkd55.net/?p=873


●作ったファイルをmacに持っていく

/Users/{自分}/.ssh に「id_rsa」としてコピー。
この時、他の人に実行権限があると上手くいかないので、600とする
chmod 600 id_rsa


●sshコマンドでアクセスしてみる

ssh {対象サーバー}


●番外編1「自分のユーザー名とサーバーに入るユーザー名が違う」
●番外編2「パスフレーズを覚えさせる」

/Users/{自分}/.ssh/config ファイルを作成

Host {任意のホスト名、全部なら*}
User {サーバーに入るときの名前}
UseKeychain yes



参考:
https://qiita.com/passol78/items/2ad123e39efeb1a5286b


grepで大文字小文字を気にしなくて検索したい、など

はい、良く使うgrepですが、結構うろ覚えな機能も多数。
ということで、今回は気になるgrepの良く使う機能を纏めておきました。


●大文字小文字を区別しないで検索したい
-i , --ignore-case

●検索結果に色を付けたい
--color

●ファイル単位に検索結果が何件あるか調べたい
-c , --count

●バイナリファイルを検索対象としない
-I

●検索結果の行番号を一緒に出力
-n , --line-number

●パターンを含んだ行「以外」を出力
-v, --invert-match


参考:
https://linuxjm.osdn.jp/html/GNU_grep/man1/grep.1.html

grepでORとかAND検索
http://workmemo.techblog.jp/archives/24855377.html

grepで前後のデータを出したい
http://workmemo.techblog.jp/archives/36652828.html


python勉強始めてみた~文字列編~

はい、公式を読み進めている勉強のログをあげております。
https://docs.python.org/ja/3/tutorial/index.html

公式の資料良いですね、読みやすいし情報がちゃんとあります。
例も多い。

ということで、今日は文字列について。

pythonのプログラムを見ていると、文字列の扱いで結構疑問に思うことがあり、
初歩的なことすぎて「これで動くんだろうか?」みたいなものがあったのですが、
やっぱりこれも公式にちゃんと載っていました。

ということで、今日はこちら。
https://docs.python.org/ja/3/tutorial/introduction.html#strings

文字列について。
紹介の都合上、全角で書いていますが、半角だと思ってください。
まあここを読むより、公式読んだ方が良いです。


●基本編
’シングルコーテーション’か、”ダブルコーテーション”で括る。

●エスケープ
¥でエスケープ。
’あ¥’ああ’

あ’ああ

●¥のエスケープを行わない
頭に「r」を付け足す
r’あ¥nああ’

あ¥nああ

●複数行(¥だけを行末に入れると改行しない)
”””¥
引用文字を
3連結する
”””

●リテラル型文字列は連続して書いたら自動連結(但し、変数には効かない)
’あああ’ ’いいい’

あああいいい


●変数の文字列分割

dat[0:12]
→0文字目から12文字目までを取得。添え字は0から始まるので、0が1文字目。

●たとえば4文字目移行全部取りたい場合(下の例ならd以降)
dat = 'abcdef'
dat[3:]

abcdef
012345

def


とりあえず、これくらい覚えておけば大丈夫そう。
rを使うことでraw型になって、\がそのまま使える、っていうのは知らないと混乱しそう。

python勉強始めてみた~計算編~

pythonを使うようになりそうなので、ちゃんと勉強しようと思い、
公式サイトが良いとアドバイスを貰ったので、まずは公式サイトをあたまから読んでみようかと思いまして。

んで、気になった点を明記していきます。
最近の(?)言語使いからすると当たり前的なものも多数あると思いますが、
良く考えたらちゃんとした勉強はCしかやっておらず(C++ですらない)、あとは勘でやってきたので、
最近のは進化してるんだなー、 という点も書いていきます。

読み込み対象
https://docs.python.org/ja/3/tutorial/index.html

python公式サイト。使うのが3系なので、3.7.3で読み進めます。

んでまず知ったのが、pythonって蛇の方からじゃなくて、モンティパイソンから来てるのね、と。
但し、モンティパイソンのパイソンが蛇(ニシキヘビ)から来てるので、最終的には間違っていないのですが。
(更にモンティパイソンの方は、どちらかというと隠語として使ってるようなので、隠語の方を調べたい人はググってください)

と、本題。
四則演算についても最近(?)のやつは便利なんだなーと。

+ - * /
この辺は分かるのですが、整数部だけの演算

//
を知りませんでした。

5 / 2
=2.5

5 // 2
=2

はい、端数切捨てて整数部だけ取れます。
取った値を整数化とかしなくていいです。便利。

また、べき乗も出来ることを初めて知りました。

2 ** 3
=8

ということで、雑な一覧

+ =足し算
- =引き算
* =掛け算
/ =割り算
% =割り算のあまり
// =割り算の整数部だけ
** =べき乗

ちなみに整数と浮動小数点(0.5とか、整数以下があるもの)を混在して計算した場合、
出力結果は浮動小数点になります(大体の言語はそうだと思いますが)

↑このページのトップヘ