それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

gnu

linux でファイル名に連番を付加して整理する。

コマンドで、ファイルに番号をつけたい。 なんか適当にファイルをつくちゃってて、ちょっと整理が大変なとき。 ls -l total 0 -rwxrwxrwx 1 takuya takuya 0 Aug 3 16:34 aeja6 -rwxrwxrwx 1 takuya takuya 0 Aug 3 16:34 aen4b -rwxrwxrwx 1 takuya takuya …

JOINを使って出欠(出勤)の一覧を作る LEFT OUTERJOIN的なことをやって、NULLをゼロで埋めて、表を作る

JOINコマンドの例 JOINを使って出欠(出勤)の一覧を作る LEFT OUTERJOIN的なことをやって、NULLをゼロで埋めて、表を作る 過去にもやったけど、書き直して。覚え直し。 次のようなデータを作りたい。 2023-08-01 1 1 2023-08-02 0 1 2023-08-03 0 0 2023-08…

sed で複数条件の置換を並べて書く。

sed の複数条件を複数列挙する。 cat sample.txt | sed -e 's|^|s/|' -e 's|$|/|' パイプ2個使わなくて良い cat sample.txt | sed -e 's|^|s/|' | sed -e 's|$|/|' 正規表現の|でも工夫できる cat sample.txt | sed -e 's|[apple|pen]|s/|' 複数列挙するほ…

gnu screen で表示がずれる問題に対応する。

GNU Screen でdpkg などncursesの表示がずれる問題 GNU Screen はapt インストール時にセッション切断などの事故に備えるために非常に有効なツールである。なのに、APTでdpkgが起動すると、ncursesで表示がずれる問題が発生し、選択が非常にやりにくくなり、…

GNU screen でマウスホイールでスクロールしたい。履歴になるの不便。

GNU Screen でスクロールを有効にしたい。 ~/.screenrc ## ターミナルでマウスホイールしてカレントのログを登る termcapinfo xterm* ti@:te@ ## xterm以外のクライアント設定になってるなら termcapinfo term* ti@:te@ いまのGNU Screen のデフォルトではコ…

sedで指定行表示 / head コマンド相当

指定行を表示 / head 相当をする 以前、sed で行挿入をシンプルに行う。 とういう記事を書いたとき、範囲指定について言及した。 今回は、sedの範囲指定を使って 先頭からN行を取得してみる。 範囲指定の練習 行番号を指定して、その行を表示する。 指定行を…

sed で行挿入をシンプルに行う。

sedなら出来る。 sed で検索文字列の直前に行を作って入れられる。 今回使ったsedはgnu sedです。 マッチの直前に行を追加 サンプル echo hello | sed '/hello/i world' hello の直前にsay を入れました。 sed で行挿入をシンプルにやる。 sed を使って、設…

sed コマンドで区切り文字を変えて、ファイル名に一致させる

sed の区切り文字を変える sed コマンドでは、検索と置換の文字列を区切りを変えられます。 普通はスラッシュを使うと思うんだけど、スラッシュはフォルダ名やPATHで使われるため、エスケープ処理が面倒になる。 sed 's/search_name/takuya/g'; 区切りを変え…

GNU SCREEN の操作方法(キー操作一覧)を閲覧する

gnu screen でキーバインド一覧をみる 慣れていると、いつも同じキーしかつかわないので、たまに眺めてみて自分の操作方法を見つめ直す. 一覧の出し方 Ctrl-A ? で一覧が出ますね 一覧の読み方 例えば、SELECT は - なので Ctr-A - 例えば、ウインドウ一覧は…

GNU Screen で screenrc をリロードする方法

再起動なしで、screenrc を反映する gnu screen の設定を変えたいときに、すでに時間かかる処理を走らせてしまっていた。 GNU screen の 設定をreload したかった。調べたらあっさりした解決方法が出てきた。 :source ~/.screenrc Escape + : でコマンドモー…

rbash で制限付きのシェルを作って安全を確保する

bash で何でもされるのが怖い?なら rbashはどうですか? rbash は bash の機能の一つで 「機能制限をされたbash」を提供するためのものです。 rbash とは、制限付きのシェル(RESTRICTED SHELL) の略です。 rbash の正体 bash -r rbash コマンドは /usr/bin/…

sedコマンドが、シンボリックリンク考慮しないが、gnu sedはなんとかなる

sedコマンドで置換すると、symlink が壊れる。 sed -i でファイルを置換するときのリンクファイルの扱い。 実験 echo xxx > a ln -sr a b sed -i "s|xxx|yyy|" a b # bは通常ファイルになる。 sed を使うときには絶対に知っておかなくてはいけない。 シンボ…

GNU Screen の終了

screen を終了する GNU Screen をどうやって終了するのか。 いつも忘れるので、メモする。 とくに、ttyS0 を使ったシリアル通信をするときに困るのでメモを残す。 方法1 :quit ctrl-a : (エスケープキー+コロン) でコマンド入力モードに入る コマンド入力…

sed で改行削除/sedで全文(複数行マッチ)

sed で改行を消してCSVにしたい。 コマンドの結果の改行を消してCSVのようなカンマ区切りに変換したい。 他の置換ツールや python / ruby のワンライナーに回せばいいと思うけど、sedでできたほうが汎用性が高そう。そのためsedで改行を置換、改行を別の文字…

findコマンドでファイルの所有ユーザーを調べ所有者を間違っているファイルを探す。

find コマンドで、自分以外の所有者のファイルを探す。 ユーザーがtakuya 以外のファイルやディレクトリを探す。 find . -not -user takuya 指定した所有者のファイルを探す。 not を外せば、所有者を限定してファイルを探す。 find . -user takuya オーナー…

シェルの組込関数(ビルトイン)の使い方manを見る方法

Shell Built'in Functions のヘルプを見たい Man ページだと見れないんだよ。man だと。 man history ## 見れない。 man で見ると、shell builtins に飛ばされる。そしてオプションを見られない。 help を使う。 help history help コマンドを使う。 シェル…

バーコード作成するコマンド gnu-barcode/rubygemsのgbarcode

gnu

お手軽にバーコードを作って、家の片付けに利用しようと思いました。バーコードリーダーあるし。なくてもiPhoneでバーコードを認識できるので、ものの所在や行方を簡単にログ取れそうな気がしました。(barcode)コマンドラインツールとしても使えるし、ソース…

ソースを綺麗に整形表示するGNU source-highlight

gnu

source-hightはプログラムのソースコードを色付けしてカラフルに、ハイライト表示したHTMLを作ることが出来る。 ソースコードの色付けは、専用のフォーマットでしかできないと思ってたら、これで一瞬できるのでなぜ今まで知らなかったと悔しい思いをしている…