min117の日記

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

awk

Laravelのクエリビルダ習得した次にEloquent(DBをオブジェクトとして扱う機能エロクエント)学ぼうと思ったけどヤメた(車輪の再開発だなコレ)

1,000万円を超えたbitcoinを少しだけどもらえるURL https://bitflyer.com/invitation?id=l50e5ljw&lang=ja-JP ハピタスからポイントもらえるURL Eloquentいらん せっかくSQLという完成された仕組みがあるのに、無理にそれをPHPで扱えるオブジェクトにする発…

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

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

bash フォルダに入ってるmp4動画の合計サイズをls表示する

フォルダの中に動画mp4や音楽mp3のファイルがごちゃまぜに入ってる状態で、動画mp4のサイズだけを合計して一発で出すワンライナー。 $ ls -l *mp4 | awk '{a+=$5; print $5,$9} END{print "-----\n" a; print "=====\n" a/1024/1024/1024, "GB"}' 合計447.52…

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

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

iPadから「pi実行」ボタンを押すと(RaspberryPiのomxplayerで)テレビで動画再生する機能 を実装する

iPadやiPhoneのブラウザから「pi実行」ボタンを押すと テレビで動画再生する。 構成はこう。 iPadのSafariから 自宅サーバ(fedora)のhttpdアドレスを叩くと http://自宅サーバアドレス/doLSglob.php http://192.168.3.11:8080/PT3/doLSglob.php 「pi実行」…

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

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

bash と awk でゴミファイルだけ一括で削除する

画像をフフフフォルダから一括でcurl取得したら失敗した。存在しないリンクにダウンロードに行っちゃってゴミファイルが大量にできてしまっている(512KBのファイル)。 $ ls -shal まともにダウンロードできたファイルも混在しているが、この大量の画像のな…

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…

LINE Pay 平成最後の20%還元で日用品を購入 → 還元額10,097円(予定)

LINE Payが平成最後の超Payトク祭をやっている。今日(2019/4/30 23:59)まで。 linepay.line.me LINE Payで素晴らしいのは、LINE Payカード(物理デビッドカード)で購入した金額も還元対象になること。 しかも今回は還元額が10,000にUPしているところが何…

awk の正規表現を実例で手に覚えさせる

こんなファイルがある $ cat exif_5001-10000_01.txt 「写真名.jpg」「exif日付」と並んでいる。各列はスペースで区切られている。 ここから exif日付(2列目=西暦日付)がある行だけを取り出したい。 なかには exif日付が複数ある行もあるが、その場合も2…

macOS Mojave 大量の写真を日付順に一括整理する(exiftoolコマンド使用)

以前購入したファイル復元ソフト WonderShare Recoverit で復旧した画像。 min117.hatenablog.com かなり強力なデータ復元機能で壊れたHDDにある画像すべてを復元できた。 17万2411枚。200GBくらいある。 しかし、写真のファイル名は復元できないようで、復…

bash はてなブログの全記事を自動でPDFにするスクリプト

ブログ記事数もそこそこ増えてきたけど今まで一度もバックアップを取っていない。Webサービスなんてしょせん他人のフンドシ(提供する場所)上で作っているものなので、例えばはてなブログが倒産したり、突然ブログサービスをやめたら全て消えてしまう。 信…

RaspberryPi3 「テレビリモコンで押したキー信号」を捕捉する cec-client | grep --line-buffered -Po '(?<=key pressed: )\w+(?= \(\d, \d\)$)'

以前の記事で、cec-clientなるプログラムを使えばRaspberryPiからテレビを操作できることが分かった。 min117.hatenablog.com 今回も cec-client を使うが、やりたいのは(電源オンオフより)もっと複雑。 リモコンで押されたキーを捕捉したい。つまりこうな…

bash 複数の録画tsファイルのサイズをawkで合計する

7時のニュースを録画したtsファイルがある。 $ ls -shal | grep 7PM これのファイルサイズ(1列目)を合計したい。awkを使う。 まずは1列目を取り出す。フィールドの区切り(Field Separater)に文字「G」を指定して1つめの変数($1)だけ取り出せば良い。 $…

bash 容量の小さい動画ファイルを一括削除する ls -shal | grep mp4 | awk '{if ($1 ~ /512/) print $1,$10}'

// HandBrakeCLI で動画の一括変換するも失敗してファイルサイズが 512KB になってしまったものがある。ファイルサイズ順で一覧化すると512KBになっているのがわかる。 min117.hatenablog.com $ ls -shalS 正常に変換されると適切なファイルサイズが出るが …

iMac 5K でクレジットカード利用明細 csv を編集する(mac OS High Sierra に nkf をインストール)

// Amazon ゴールドカード会員になった。カードの利用明細は「Vpass」というWeb明細に登録することで閲覧できる。 現在の明細はCSVでダウンロードできるらしい。 せっかくなのでダウンロードして、iMacのbashから見てみる。 $ cat 201711-4.csv ダメだ。文字…

bash ファイル一覧(ls -l)の表示サイズをGB単位で表示する(awk)

// ファイル名に「NHK」を含むtsファイルの合計サイズをGB単位で表示させたい。 コマンドの変遷 $ ls -l | grep NHK $ ls -l | grep NHK | awk '{print $5,$9}' $ ls -l | grep NHK | awk '{a+=$5; print $5,$9}' $ ls -l | grep NHK | awk '{a+=$5; print $…

bash ファイル名の年月日と時刻の間にアンダーバーを挿入する(正規表現・awk)

ハイビジョン録画ファイルの命名規則を途中で変えてしまった。 ーーー ① ファイル名の年月日と時刻の間にアンダーバーがある。 $ ls | grep -e '^NHK_........_.*' | tail -n 3 NHK_20170304_070001.ts.mp4 ーーーー ② ファイル名の年月日と時刻の間にアンダ…

bash 画像の撮影日時(EXIF)を「YYYYMMDD_HHMMSS」形式で取り出してファイル名に付ける(awkとsedで)

iPhoneで撮ったシンガポール旅行の写真を、Macの「写真」アプリに取り込み&書き出しを行ったら、ファイル名が「IMG_0775.JPG」のようになってしまった。これではいつとった写真か分からない。 ーーー (やりたいこと) IMG_0775.JPG ↓ ①ファイル内に持って…

bash awk ファイル一覧(ls)の毎行ごとに容量の合計を表示する

// 大量の動画ファイルをブルーレイ(片面25GB)に焼いていくけど、どれとどれを焼けば合計で25GBか?を考えるのが面倒。こういうのこそコンピュータにやらせる。 ーーー 毎行ごとにファイル容量の合計を出す $ { for i in *{ts,mp4}; do ls -shal "$i" | aw…

bash awk テレビ録画した動画ファイルの容量がGB超のものだけを一覧化してサイズ合計を表示する

// 録画した地デジ動画ファイルが溜まっているので、容量の大きい(GB超のもの)を取り出してブルーレイに焼きたい。動画はこんな感じ。 $ ls -shal | grep NHK.*ts.*mp4 サイズ(第1列)がギガバイト(G)のものだけにする。 $ ls -shal | grep NHK.*ts.*mp…