改行ありファイルのデータをカンマ区切りにする。 最後に改行がある場合はカンマにしない。 という状況のものを、bashで実現。 DATA=$(cat $DATA_FILE | perl -pe 's/\n/,/g') if [ "${DATA: -1} = "," ]; then DATA=${DATA/%?/} fi 最後の1文字の指定の-1 の前に半角 ...
もっと読む
タグ:unix
ファイル行数を調べてif文で使う
ファイルの行数を調べるときはwcコマンドを使 います。 wc -l とかやると行数とファイル名が取れるのです が、if文で行数判断しようと思ったら、行数が邪 魔。 ということで調べていたら、grepという手にあ たりました。 grep -c '' {ファイル名} とすると、純 ...
もっと読む
tarで元ファイルを消す
tarで圧縮するときに、元ファイルを消す方法無 いのか、と思って調べたら、やっぱりありまし た。 --remove-files ということで、圧縮祭りがもう少し楽になりま した。 但し、最後に付けないと変な挙動しました。 例) tar -cfvz 2009.tar.gz 2009 --remove-file ...
もっと読む
出力をランダムにする
出力した結果からランダムで1000行抜き出 したい、みたいな時に使う。 shuffle -o 出力ファイル入力ファイル これでランダムになる。 なんかの結果を出したものをランダムで数行取 りたい場合 echo "{複数行のデータ}" | shuffle | head unixのコマンドじゃ ...
もっと読む
tgzファイルの部分解凍
tgzファイルの部分解凍 巨大なtgzファイルの中の一部を解凍を解凍した い場合 tar xzvf {圧縮ファイル}.tgz {解凍したいディレク トリやファイル名} これで部分解凍可能 ...
もっと読む
testコマンドの自分で掘った落とし穴
自分で掘った落とし穴に落ちました。 ファイルの存在チェックでtestコマンドを使って いたのですが、 あまり気にせず test -s {ファイル} としていたら、ファイルの中身が空の場合エ ラーになる。 存在チェックだけの場合、-s は要らない。 参考情報 http://itpr ...
もっと読む
seqコマンドでゼロ埋め
seqコマンドでSQLのパーツを複数作ろうと思っ たときに、 0時~23時みたいな表現を作ろうと思って、 ゼロ埋めどうするか、と思っていたら、 そもそもseqコマンドに機能がありました。 seq -w 0 23 とすると、00~23となります。 ...
もっと読む
unixで容量食ってる犯人を探す
ディスク容量がパツパツになってきたときに、 割と犯人探しをするのでコマンドをメモ。 du -ks * | sort -nr | head キロバイト単位に大きい方からデータを出す。 ...
もっと読む
Unix でバックグラウンドに行った時の対 応(Ctrl+z押しちゃった)
Unixとか使っているときに、Ctrl+ナントカをや ろうとして、 間違えてCtrl+zとすると、プロセスがバックグラ ウンドに移動する。 [1]+ 停止 {コマンド名} みたいになる。 ここから復帰する方法。 jobs :コマンドでプロセス番号を確認 fg %{プロセス番号} :プロセスの画 ...
もっと読む