bash
考えてみりゃ当たり前だったのですが、無駄に時間が掛かったのでメモ 実際のところ $ printf "%s >>" foo bar foo >>bar >> $ printf "%s %s>>" foo bar $ printf "%s>>" "foo bar" foo bar>> 実際の例 なんも知らないと力業で%sを並べる羽目になりますが…… …
すっかり軟弱になったので数字を 実際のところ $ echo "scale=0; 4+42/2" | bc 25 $ echo "scale=10; 4+42/2" | bc 25.0000000000 すっかり忘れていましたが……ヒアストリングに変数を与える方式で $ cat cmd.txt scale=10; 4+42/2 scale=2; 4+86/3 $ cmdstri…
どういう訳か、一時ファイルを作るという習慣を身に着けずに今日までやってきました。 保存用のファイルを一個作って、新プロセスが始まったらそのファイルに一から書いてくという原始的極まりない方法です。 流石にいかんやろと思い、一時ファイルの方法を…
実際のところ ファイルディスクリプタ(ファイル記述子)の効用 $ echo 123 > sample.txt $ cat sample.txt 123$ exec 3> sample.txt $ echo 456 >&3 $ cat sample.txt 456 ファイルディスクリプタと名前付きパイプを使う 普通の名前付きパイプなら $ mkfifo…
node-redでUSBカメラを使おうとしたところ、 おそらくUIの方に握られてInjectの時刻毎の実行ができないケースに遭遇しました一応抜き差しで何とかはなったものの、最終的にはリモートで操作したいので……これを機にコマンドでやる方法を調べる事に 実際のとこ…
実際のところ Data URIを使って、インライン画像を生成 PNG画像のインラインなら、特に記述変更の必要なく埋込ができます convert rose: -resize - inline:PNG:-これをm4をつかって埋込します 以下の様にテンプレート(index.html)を用意して <html> <body> <img src="YOURIMG1"> <img src="YOURIMG2"> <img src="YOURIMG3"> <img src="YOURIMG4"> </body> </html> m4を実…
実際のところ 素で実行すると、単にプロセス名がでるだけ # pgrep bash 1 16 25 プロセスの細かい内容をだす # pgrep bash -a 1 bash 16 bash 25 bash 一番古いプロセスをだす # pgrep bash -o 1 一番新しいプロセスを出す # pgrep bash -n 25 参考もと Man …
実際のところ 9~30までのファイルを名前を変更して移動し、かつ移動したファイルを別名でリサイズ # cat vZ.txt 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30# parallel -a vZ.txt 'mv /root/Downloads/dict/image\ \({}\).png /root/…
termiusを使っていたらmoshとかいうのが MObile SHellの略らしく、途中でスリープ等でロストしてもセッションを継続してくれたり、 接続先のWiFiスポットが切り替わっても生きる様子。移動体で使うには結構便利なんでは? 実際のところ 接続先の方でサーバー…
実際のところ $ foobar () { printf $1; shift; printf "_"$1; }$ foobar 12 34 12_34 応用例:パラメータの読み込み shiftをつかうとオプション値の順次読み込みのような動作を実現できます。 #!/bin/bash declare color=null declare value=0 until (($#==…
$ myary=("1234" "5678" "909")$ echo ${myary[0]} 1234echo ${#myary[0]} 4$ LONG=${#myary[0]} $ printf "%${LONG}s" s sループで回して一番長い奴を探してそれに合わせるとかできるかも ……まぁ、実行速度考えれば先に決めとけって話ではあるのですが 参考…
Jetson用の機体状態表示ツールであるjtopがかなり恰好良かったので、 これに似たような事ができるツールを探したところ……ありました 本家はbtopというツールのようですが、こちらのbashtopはそのまんまbashで稼働するツールです。 実際のところ 導入 aptで導…
実際のところ 時間の計算 $ units -t "24 hour + 34 minute" sec 88440 異なる単位の足し算 $ units -t "1 inch + 34 cm" m 0.3654
日本円に設定して最新のレートを引っ張るには units_cur -b JPY試してみると # units Currency exchange rates from FloatRates (JPY base) on 2022-08-23 3304 units, 92 prefixes, 107 nonlinear unitsこの状態であれば units -t "100 HKD" 1749.1684 japa…
実際のところ ”-o”が出力フォーマット指定のオプション いわゆるANSI-Cフォーマットなので、gで整数型、fで浮動小数点型 $ units -o "%.10g" "12 m" cm * 1200 / 0.0008333333333 結果の数値だけ表示したいなら追加で"-t" $ units -t -o "%.10g" "12 m" cm 1…
unitsコマンドは単位から単位の簡易計算に使えるツールです A4用紙のサイズといった規格から、mからマイルへという変換も簡単にできます 実際のところ 例として3ミリ光秒*1とマイルの対応なんていう (すくなくとも私は)突然新橋の路上で聞かれても回答できそ…
bashの特殊変数”$-”から現在実行中のシェルのオプションを読み取る 実際のところ $ echo $- himBHsこのうち、"i"は対話モード。 何らかの事情でコマンド実行中のシェルが対話型か実行したい場合は case "$-" in *i*) echo This shell is interactive ;; *) e…
これまでRasPiにUSBカメラを載せて動かしていたシステムをIPカメラで置き換えることになりました カメラはあくまで動画配信のみ、画処理は受信先で一気にやる想定で選定しました。 今回の配置先と性能、評判を総合的に考えて選んだのが、こちら。 ATOM Cam 2…
実際のところ 実行環境 Ubuntu 20.04LTS on Docker ffmpeg version 4.2.7-0ubuntu0.1 コマンド Atom Cam2のLive streamを画像でうけとる方法は以下のようになります。 YOURPATH=rtsp://XXXX:YYYY@192.168.Z.A/live $ ffmpeg -rtsp_transport tcp -stimeout 2…
実際のところ デフォは/usr/share/figletにあるもので、様式さえ合っていれば自前定義も可能。 flfかflcという様式らしい。 "-d"でディレクトリを指定すれば新しいのも使える。たとえばfutureだとオールドフューチャー的な雰囲気 外部からフォントをもってく…
実際のところ $ sudo apt install toilet 使い方 とりあえず表示 $ date +'%F %T' | toilet -f term -F border --gay デジタル時計風 $ while true; do tput clear; date +'%F%n%T' | toilet -f big --gay; sleep 0.2; doneこれが、こんな感じで表示されます…
何やらヤヤコシイ事をしている気がしますが……手元PCの疑似端末(PTY)に送るデータをUDPで遠方に送る方法です。 実際のところ 送信側 対話はscreenやminicomで/dev/vmodem0に接続して行います。 ptyのオプションwaitslaveを使う事で他所のプロセスがlink先を…
実際のところ 以下の例ではバイナリ”0xdeadbeef"が送られるものの、escapeに0xbeが設定されているためそこで読み込み中止、stdoutには\xdeadが出力されます。 echo "\xde\xad\xbe\xef" | socat stdio,escape=0xbe stdio使えるのはSTDIOに限りません。 UDPで…
シェルスクリプトで使用する想定なマクロエンジンm4は、必然としてシェルコマンドの内部実行も可能。 実際のところ 目的であるテンプレートエンジン的な使いかた 引数にファイル名をとり、独自コマンドをパイプで渡して、それをcatでキャッチして実行という…
m4は実際にはマクロを記載したファイルを実行するような形で運用するのですが、 量が増えてくるとチョコチョコと確認したくなるタイミングも出てきます。 幸い、m4にも対話型インターフェイスが備わっています。 実際のところ "-i"オプションを付ければ対話…
slimやjadeのようなテンプレートエンジンを使うとHTMLの一部を置き換えしたりできます。 シェルスクリプトでコレを実現する場合、私はいままでgrepだのsedだのawkだのをブンまわしていました。さて、ここで昔から使われいるテキスト処理ツールのm4が登場しま…
$ ./mycmd > my.log みたいな事は普段シェルスクリプト書く人はご存知かと思います。 ここで、組み込みコマンドexecとサブシェルを使うとサブシェル中の実行結果をリダイレクトさせることが可能に・ 以下の例では、日付を出力した後mycmdを実行しそれをmylog…
妙に帯域が細かったり、あまり優先的でない処理を行う際、limit-rateオプション使うと速度制限ができます。 実際のところ 速度を1k/secに制限した状態で"http://foobar/download"からfile.extという名称でダウンロードするには $ curl -o file.ext --limit-r…
shuzo-kino.hateblo.jp の続き的内容 netcatの"-k"オプションは読み取りを連続させるオプション これと名前付きパイプを組み合わせると、別プロセスで動いてる標準入力まちのコマンドに文字列を送り込む事が可能に 実際のところ 標準入力をループでまってるY…
いくらお手製ツールでも、長時間掛かるような奴は進捗が見えないとさすがに不安になります。 pvコマンドを使うと、そのあたりの可視化が可能に。 実際のところ "-p"はアニメーションするプログレス表示、"-b"は転送済みバイト列。 $ nc -l 9999 | pv -pb > t…