min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

シェル芸

WSL2ではデフォルトでプライベートIPが有効らしい

ハピタス登録で1,000円分になるURL WSL2にて なんぞこれ。 家のネットワークは192.168...体系だし、このWSL2は無線LANのWin10(eth0なんて使ってない)んだけど。 WSL2からはプライベートIPアドレスが有効になっているらしい。 rcmdnk.com うざいな。 コレ仮…

景気ウォッチャーで自然言語処理入門 の真似事(bash+mecabで単語分析)

景気ウォッチャーで自然言語処理入門 面白そうだったので参加。オンラインの無料勉強会。 140人もいたのか。 基本Zoom(じゃなくてBrave Talks)というオンライン会議ツールで参加。 ビデオも音声もOff。聞いてるだけでOK。 景気ウォッチャーとは ほうほう。…

ffmpegでNHK第2らじるらじるR2録音

ffmpeg + R2 うまくいった。 $ curl 'http://www.nhk.or.jp/radio/config/config_web.xml' | grep m3u8 | grep r2 $ M3U8URL='https://radio-stream.nhk.jp/hls/live/2023501/nhkradiruakr2/master.m3u8' $ ffmpeg -i "$M3U8URL" -write_xing 0 test_NHKR2.m…

macOSのターミナルで command + Shift + ¥ を押すとタブ一覧を表示できる

macOSのターミナルで こうやってタブ複数開いてて command + Shift + ¥ を押すとタブ一覧を表示できる。 Escを押すか、もっかいcommand + Shift + ¥ を押すと戻る。 他にもあるみたい。 command + D は、vimの画面分割と似た感じ。 command + Shift + D で元…

我流yt-dlpフロントエンド実装 → phpのexec()実行結果output配列からawkで任意列を取り出し成功

こんな感じのフロントエンド URL受け取ったサーバ側のphpでbashコマンド(yt-dlp)を叩く。 min117.hatenablog.com 実行したコマンド文字列は画面にも表示する。 bashコマンド(赤文字)は ・バックグラウンドで実行しないと処理待ちになっちゃうから、末尾…

IOCCCの「Most Portable Output」を試す

やってみた。 mametter.hatenablog.com すげぇ mame.github.io やり方メモ。 日本語解説サイト(素晴らしいなコレ)に行き ★ 動作コードをメモる。 ↑の「審査員・作者による説明」のリンクに行って hintの一つ上のフォルダ(↓だと2000)リンクに行く リンク…

CSVに色を付ける(ANSIエスケープシーケンス)その2

CSVの各列に色を付ける。前回の続き。 min117.hatenablog.com 今度は引数にCSVファイルを指定して開けば列数を自動で判定して各列に色をつけてくれるようにした。 こうやって開くと $ ./myCSVcolor2.sh ebooks.csv 列数をカウントして各列への色付け(ANSIエ…

CSVに色を付ける(ANSIエスケープシーケンス)

なんてこった。CSVの各列に色をつけられるらしい。ANSIエスケープシーケンスを使えば可能なようだ。 こうなる。 超わかりやすい。 ソースはこれ。 今後やること ・csvファイル名(ebooks.csv)はソース内に固定で書いちゃってるけど、引数で取れるように改良…

python3 カンマ区切りCSVファイル内の「金額列のカンマ区切り」のみ消し去る

例えばこんな財務データファイルがある。 irbank.net ファイル名はSheet1a.csvで保存。 売上高列に続く数字は "116,861,000,000円 "。 つまり、金額がカンマで区切られてしまっている。これだとCSVの各項目(フィールド)の区切りのカンマなのか金額のカンマ…

sed ヘッダ行だけをタテに表示する (Excelの行列を入れ替えて貼り付け)

こんな感じのカンマ区切りのcsvファイルがあったとして $ vim test.csv 1列目(ヘッダ)だけをタテに表示したい。 sedでできた。こうなる。 $ cat test.csv | head -n 1 | sed -e 's/,/\'$'\n/g' 's/,/\'$'\n/g' ではsとgの前後にシングルクオートが要るらし…

macOS Ctrl+h で入力中の文字の左1文字が消せる → Ctrl+k だと

macOSでは Ctrl+h で入力中の文字の左1文字が消せる。すごい。 今さら知った。超便利。 もちろんメモアプリでもCtrl+h で入力中の文字の左1文字が消せる。 この記事を書いているこの文字ですらCtrl+hで(deleteキーのように)消せる。 この記事を書いている…

fedora30 定期実行cronの実行ログをjournalctlで見る

毎日のラジオ録音がcronで正常に動いたかどうか確認したい。journalctlでcronのログを確認する。 できた。 $ journalctl --since today | grep -v MUSIC --since today とすれば今日のログが取れる。 grep できるみたい。 journalctl嫌い。UNIXの哲学に反す…

bash トランプの札を全て表示する

麻雀ができたのでトランプもやってみる。 orebibou.com Unicode 麻雀牌 - CyberLibrarian Unicode トランプ - CyberLibrarian [fedora PT3]$ echo -e \\U1F0A0 \\U1F0A{1..9} \\U1F0A{A..E} \\U1F0B{1..9} \\U1F0B{A..E} \\U1F0BF \\U1F0C{1..9} \\U1F0C{A..…

bash マージャンの牌を全て表示する

麻雀なんてやったことないから意味は全く分からないが、文字コードにはマージャン牌があるらしい。 orebibou.com Unicode 麻雀牌 - CyberLibrarian Unicode トランプ - CyberLibrarian [fedora PT3]$ echo -e \\U1F00{A..F} \\U1F01{0..9} \\U1F01{0..9} \\U…

bash 3桁の数字で各桁を足すと15になる数字だけを表示(ゾロ目は除く)

www.youtube.com [fedora PT3]$ seq 123 999 | grep -v 0 | awk -F '' '$1+$2+$3==15' | grep -P '(.).*\1' 177 339 366 393 447 474 555 636 663 717 744 771 933 [fedora PT3]$ grep -P だと perlの正規表現 min117.hatenablog.com xargsで1行に表示 [fedo…

bash sedでラベリングによりループ回して三角形を書く

シェル芸勉強会の動画。毎度すごい参考になる。 www.youtube.com シェルにこんな三角形を表示するワンライナーはどう書くか? こうやる。 $ echo ' ^^' | sed ':a p;s/ ^/^ /;b a' | head -n 5 | sed 1i. すごい。 $ echo ' ^^' | sed ':a p;s/ ^/^ /;b a' |…

大量のmp3ファイルに一括でアルバムアートを登録する(eyeD3)

iTunesでなくて、CDで買った曲をiPhoneの「ミュージック」アプリに入れて聴く。アルバムアートをつけるのが面倒(けど実は楽しい)と思っていたら、一括でアルバムアートを登録できるeyeD3なるコマンドがあった。 Macのbashで動くのが最高に良い。動きはこう…

bash 複数のソースファイルに日付をつけて一括バックアップ(拡張子は変えない)

pythonやらphpやらで色々書いたソースを一括でDropboxにバックアップしたい。 ファイル名に今日の日付をつけて拡張子は変えずにバックアップする。 こんな感じ。 ファイル名から、本体部分(body)と拡張子部分(ext)を取り出すところに工夫がいる。 できた…

国別プロキシリストを画像に落とす

国別プロキシリストなるサイトを見つけた。 各国のproxyが載っているようだ。 proxyのリンクに入ると各国にある串の一覧が見られる。 どうも怪しい広告が入っているが情報としては悪くない。こういうときは必ずシークレットモードでアクセスする。 うむ。 国…

macOS Mojave treeコマンドの文字化けは -N オプションで解決

macのtreeコマンドで日本語が文字化けしてしまう。 $ tree これでは何のファイルか分からない。リダイレクトでテキストに落とすこともできない。 こういうときは -Nオプションを付けるといいみたい。 $ tree -N 素晴らしい。 qno.oops.jp //

bash for文で変数に代入した値をゼロ埋め(ゼロパディング)する

素晴らしい記事発見。 genzouw.com 例えばfor文ではseq -w を使えばゼロ埋めした連続文字列を作れることは知っていた。 $ for i in `seq -w 1 10`; do echo "$i"; done しかしこれ(seqを使う方法)だと、for文に食わせる文字列が連続していない場合はゼロ埋…

Linux ジョークコマンド sl を動かす

前回記事でジョークコマンドに目覚めた。 min117.hatenablog.com 今回は sl コマンドの動きをみる。インストール自体は以前してある。 min117.hatenablog.com 動くとこうなる。 // おそらくだけど、リストコマンド ls を sl に打ち間違えたエンジニアが「じ…

RaspberryPi3 コマンドcmatrixをインストール → マトリックスの「あの画面」をコンソールに流す

面白い記事を発見。この人の記事ホントためになる。おそらくだけど有名な技術者だと思う。 orebibou.com 映画「マトリックス」のあの画面が再現できるコマンドがあるようだ。 www.youtube.com cmatrix というコマンドらしい(Character Matrix の略だろうか…

Outlookのデータ(.pstファイル)をテキストに変換する(readpstコマンド利用)

6年前の古いOutlookのデータ(.pst)が出てきた。 6年前、自分はどんなメールをしていたんだろう…と。 開いて中を見たいけどWindowsで開くと 現在のOutlookにインポートされちゃって、今リアルに使っているメールと混じってしまう心配がある。 なのでLinuxで…

bash 仮想通貨マイニングウイルスに現実に仕込まれたソースからシェルのノウハウを学ぶ

1月に入って、ランサムウェア「GandCrab」が添付されたメールが大量に出回っているらしい。 japan.zdnet.com 復元ツールは出ているみたいだけど japan.zdnet.com ランサムウェアは影響が大きいので感染はゴメンこうむりたい。 なんて情報をあさっていたら、…

bash byobuで開いた複数セッションの履歴を全て.bash_historyに保存し共有する

byobuで複数のセッションを切り替えて使っているときにセッション間の履歴を共有できないのに困っていた。 例えば セッション0 の履歴がこれで セッション1 の履歴がこれ。 Ctrl + p して入力履歴を呼び出すときにセッションごとに履歴が異なるのが困る。全…

Windows コマンドプロンプトからディスクの容量を確認する(cmdでdf)

Windowsでディスクの容量を確認する作業が地味に面倒くさい。画面の左から「コンピュータ」を選ぶ作業が面倒。 「選べばいいだけじゃん」と思うかもしれないが、1日に何度も繰り返すこの選ぶ作業をいかに減らせるかで作業効率が全然違ってくる。コマンド一発…

情報処理安全確保支援士(SC)平成30年度 秋期 午前Ⅱ 解答速報(2018年10月21日実施)

本日 2018年10月21日。受けてきた。 自分なりの解答速報。 ※ 午前Ⅰ は免除なので受けてない。 ※ 午前Ⅱ の解答速報。 <平成30年度 秋期 午前Ⅱ 解答速報> △が付いていないものはまず間違いなく正解(過去問にある or 調べた)。 △が付いているものは自信なし…

bash の行数カウント wc -l と同じことをWindowsのコマンドプロンプトでやるには → find /c /v "" とする

Linuxで行数をカウントするのはカンタン。例えば、拡張子sh(シェルスクリプト)がこれだけあったとする。 $ ls | grep sh その行数を数えるには wcコマンドにパイプすればいい。オプションは -l(たぶん line の頭文字)。 $ ls | grep sh | wc -l // これ…

bash echo-sdコマンドで >突然の死< ジェネレーター を試す

ツイッターでよく見かける「囲み文字」を作るコマンドがあるらしい。 // >突然の死<ジェネレーター - 拡張 POSIX シェルスクリプト Advent Calendar 2013 - ダメ出し Blog 暇なのか天才なのかよく分からないけど、すごいものを作るもんだ。 さっそくインス…