pslaboが試したことの記録

はてなダイヤリーからはてなブログに引っ越してきました

この日記は現在実行中の減量記録を含む個人的なメモとして始めましたが、最近はコンピュータやガジェット、ハック、セキュリティネタのほうがメインになっております。

はてなダイヤリー時代はカテゴリ分けが適当だったのですが、これはそのうち直します。


bash

シェルスクリプトで時刻の秒が 0 秒になるまで待つ処理を書く

ローカル環境で 1 分ごとに特定の処理を実施する必要が生じたのでシェルスクリプトを書こうと思ったのですが、次のように安易に sleep 60 を行うと 1 分ごとの実行にはなりません。 #!/bin/bash while : ; do (何かの処理) sleep 60 done 例えば、何かの処理…

find によるファイル検索で複数の拡張子を対象に探す

find で .h と .cpp の一覧を取得する必要が出たので方法をメモとして残します。 find . -type f \( -name '*.h' -or -name '*.cpp' \) | xargs ... ファイル名やディレクトリ名にスペースが含まれるために -print0 したい場合は抽出条件の後に -print0 を記…

秒数を 時:分:秒 のフォーマットに変換するbashスクリプト

とある処理プログラムの所要時間が秒単位で出力されるように実装されていて、しかしその処理時間は数十分に及ぶこともあるため、実際の処理時間が直感的に分かりづらいという状況がありました。そこで秒数を入力したら時:分:秒 のフォーマットで出力するスク…

bash で URL をパースして連想配列に代入する

1年くらい前にこんなのを作っていたのですけど、これはちょいと使い勝手が良くない気がしました。抜き出したい部分が増えるたびに新しいシェル変数が必要です。pslabo.hatenablog.com これは楽しくないので、パースした結果を連想配列に入れるように作り変…

「MACアドレスからベンダーを検索して表示するコマンド」を作ってみる

「MACアドレスからベンダーを検索して表示するコマンド」を探してみたのですけど案外見当たらない。こうなったらベンダーリストをIEEEのページからダウンロードして使うしか無いか、と思っていたら、こんなのを見つけました。 API | The simplest MAC Vendor…

UNC と UNIX上のパスをsmb.confや/etc/passwdを参照して汎用的に相互変換する

以前に「samba の機材に ssh でログインして UNC で cd」したり、あるいは「ssh 接続時のカレントディレクトリのUNCを取得する」という誰得なネタを書いていたのですが、これらの実装は汎用性がない手抜き実装でした。pslabo.hatenablog.compslabo.hatenablo…

sambaサーバ上のUNIXのパスをUNCに変換して表示する

以前に「sambaのUNCのパスでcdする」処理を書いたのですが、今回はこれの逆パターンで「sambaサーバ上のUNIXのパスをUNCに変換して表示する」という処理を書いてみました。 pslabo.hatenablog.com 手抜きの実装なので、あんまりキレイに書いてません。。。pw…

echo や cat を文字、単語、行単位でゆっくり表示する関数を bash で書いてみた

echo や cat のような処理を普通に行うのは味気ないので、ゆっくり表示する関数を bash で書いてみました。対話的な処理をスクリプトで書く場合に、目的に応じてメッセージ表示のしかたを変えたい場合に使えるかも?? また echo については -n や -e の引数…

samba経由で参照中のフォルダのパスをssh経由でログイン中のシェルでcdする。

UNIXサーバのファイルをsamba経由で参照しつつ、そのファイルをシェル上から操作したい場合にフォルダ名を手作業で変換して cd するのはめんどくさいので、bashで関数として定義してみました。さらにそれをcdのエイリアスとすることで、シェルのビルトインコ…

bash で連想配列のテスト

自分用のメモ。bash で連想配列するテスト。 #!/bin/bash # 連想配列の宣言 declare -A flag # 値の代入 flag["verbose"]=0 flag["configcheck"]=1 flag["exec"]=1 flag["command"]="ls -l /" # こっちのほうがわかりやすい? flag=( ["verbose"]=0 ["config…