仕事メモとか

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

カテゴリ: perl

perl でリダイレクトをする方法


殆どperlを触らずに来たので、何かもう簡単なものから勉強中。
plファイルを踏んだら最後にリダイレクトをするものを作りたかったのですが、
そもそもリダイレクトってどうやるんだろう? と思って調べた。

ら、出てきたんですが、

print "Location: {URL}\n\n"


print文でやるんだ・・・
サンプルソース見てて、ログ出力してるだけなのかなーって見流していたら、
まさかこれがリダイレクト部分だったとは。

perlで頑張って、1カラム目だけゼロ埋めして、あとはそのまま

cat data.txt | perl -ne 'split(/\t/,$_,2); if ($_[0] ne "") {printf
"%06s\t%s",$_[0],$_[1]} else { printf $_ }'

タブ区切りのデータで、1カラム目だけゼロ埋め。
あとは可変なので行く付かるか分からない、というデータの時に、splitの第三引数を使って分割。
1カラム目、2カラム目以降に分けることで、データ上は$_[1]に2カラム目以降が全部入る。

最初はcutとpasteを組み合わせてやろうと思ったけど、perlだけで出来たので、この方がシンプル。

タブ区切りの出力を行列変換したいので、コマンド作成。
この内容で実行ファイルを作る

awk -F'\t' ' { for (i = 1; i <= NF; i++) tmp[i] = tmp[i] "\t" $i } END { for (i = 1; i <= NF; i++) { sub(/^\t/, "", tmp[i]) print tmp[i] } }'

↑このページのトップヘ