読者です 読者をやめる 読者になる 読者になる

min117の日記

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

シェル芸 awkでASCIIアート出力

Twitterかどっかで拾ったこの画像。たぶんシェル芸勉強会か何かの画像だろう。 この人の技術も何か関係してそうだけど。 qiita.com どこで拾ったか忘れた。 ーーー この画像のソースをそのまま書いてみる。 $ vim suddun_death.sh 何が起きるかは分からない…

LinuxのSQL*Plusでbashのhistory機能を使う(カーソル↑↓で履歴を呼び出す)

前記事でLinuxでsqlplusを使えるようにした(Oracle謹製Instant Clientを使用)。 min117.hatenablog.com しかし、ヒストリ機能がない(Instant Clientだから?)。例えば矢印キー(↑や↓)を押しても、過去の履歴を表示できない。これじゃ実用に耐えない。 …

LinuxのSQL*PlusからWindowsのOracleサーバにアクセスする(Linux版 Instant Client を使う)

Windows2003上にOracleサーバ(10.2.0.4.0)がいる。クライアント機(fedora Linux)から、このサーバにsqlplusでアクセスしたい。 ーーー 今までは、VNCでWindowsサーバに入って、そこからsqlplusを起動していた。 これだと、VNCの環境のせいか、キーボード…

bash BUFFALOの無線LANルータをリモートからコマンドで再起動する

BUFFALO製の無線LANルータ WXR-1750DHP 買った。1万円超のグレードだけあって、性能よい。 中継器も付けて快適。 と思ったら、たまに親機(WXR--1750DHP)の通信がフン詰まることがある。再起動すれば直るけど、その都度ルータのある場所に行くのは面倒。 ー…

fedora wiresharkのGUI版をインストールするには yum -y install wireshark-gnome を使う

fedora20 でパケットキャプチャの必要が出た。wiresharkをインストールしたい。とりあえず yum で入れてみる。 $ sudo yum -y install wireshark インストールはすんなり成功したものの、GUIメニューに「wireshark」が無くて困った。起動できない。インスト…

bash bannerコマンドでシェル画面に文字列を出すスクリプト(文字列Xamarinを出力)

// ツイッターで見かけたこの記事。感動した。bashを使って画面に縦文字を書く「banner」コマンドの出力を、横にするワンライナー。 天才は居るもんだ。bash最高。awk最高。速攻で試してみる。 $ banner -w 40 'Use Xamarin' | tr '# ' '+-' | awk '{printf …

bash radiko参加局一覧から、参加局のID(識別子)だけを抜き出す

// 前記事の続き。 RaspberryPi 3 でradiko受信してテレビ画面でラジオを聞く - min117の日記 radikoの参加曲一覧を掲載したサイトが以下にあり。 radikomemo - foltia - Trac Linuxでradikoを再生する時には、ここからradiko.shをダウンロードして、 # sudo…

bash タスクの実行状況確認(ps aux をカスタマイズ/ワンライナーで)

// bashでラジオの録音スクリプトを組んだ。rtmpdumpで録音して、ffmpegでmp3にする。実行状況をモニタリングしたい。使い捨てのワンライナー。 $ for i in `seq 1 10000`; do if "$i" -le 10000 ; then ls; ps aux | egrep 'rtmp | ffmpeg'; echo "$i"; sle…

bash シェルからcurlでPHPを叩く

// fedoraサーバにあるrecHTTP.phpファイルにGETで引数を投げてやると、「録画プロセスrecpt1が起動しているか」を判定して返すようにしてある。 いつもはブラウザから実行してた。 これを、RaspberryPiやMacのシェル(bash)上からコマンド実行できるように…

bash Linuxシェルと同じことをWindowsバッチでやる

// Linuxシェルは毎日の生活になっているので普通に使ってたけど、ここにきて仕事でWindowsバッチを書くことが多くなった。両方で同じことをしたい。 ーーー 今いるフォルダの一覧を取得する(lsと同じ)を、bashとWindowsバッチと両方でやってみる。 ① Linu…

bash sedを使って文字をタテにして短冊にする

// bashいじればいじるほど面白い。GNU sedでは変換後の文字として改行を指定できるらしい。 $ echo 文字をタテにして短冊にするテスト | sed 's/./&\n/g' 任意の一文字(ドット)を、アンド記号( & )がそのまま受けとって、そのあとに改行( \n )を付加…

bash テレビを音楽プレイヤーにする

RaspberryPiの/volumes/mp3 にマウントしたフォルダにある大量のmp3から、指定した単語を含むファイルを検索して、テレビで音楽再生する。 ソース $ vim mymp3z.sh コツ 26行目…IFSを空白以外に指定している。これやらないと、ファイル名に空白を含んだmp3が…

bash manコマンドを引数manで実行する

// コマンドの後ろの数字がマニュアルの章を表すのは知ってるけど…1章と3章のどっちがシェルコマンドで、どっちがライブラリだったか。すぐ忘れる。 scanf(1) 1章記載…シェルコマンドとしてのscanf scanf(3) 3章記載…C言語の関数としてのscanf(プログラムラ…

bash USP研究所「シェルプログラミング実用テクニック」より GancarzのUNIX哲学

// USP研究所「シェルプログラミング実用テクニック」買った。冒頭の「GancarzのUNIX哲学」にあまりにも感動したので載せておく。 どれ1つとっても、実感をもってウンウンと頷いてしまう。 ほんと良い本を買った。

bash 今いるフォルダ内にあるファイルの拡張子を取得する(if文の中でorを使う)

// 今いるフォルダの中に、拡張子がtxtやlogな細かいファイルがたくさんある。その拡張子だけ取り出したい。 ソース こんなフォルダで実行してみる。 $ ./mynkf.sh ポイントは2つ。 19行目 拡張子を取り出すには、bashの「パラメータ展開」を使う。シャープ2…

bash 今いるフォルダ内にあるファイル一覧、フォルダ一覧を配列に格納する

// bashで、フォルダ内にあるファイルやディレクトリの一覧を配列に格納して使う。覚えるのは3つだけ。 ① 空の配列を作成する f_arr=() ② 配列に要素を追加 f_arr+=("$filepath") ③ i番目の配列要素を参照 ${f_arr[i]} 基本だけど色々使えそう。

MacBookAir 内蔵カメラでコマンドから音無し自撮りする(imagesnap)

// MacbookAir にはディスプレイの上にカメラが付いている。 bashのコマンドラインから使えるとよいなと思って調べた。imagesnap という良いソフトがあるらしい。 imagesnap ImageSnap: Capture images from iSight and other sources from the command line…

Windows10 AnniversaryUpdateをMicrosoftのサイトから手動で適用する

// 仮想環境のWindows10にAnniversaryUpdateが降ってこない。仮想環境だから?英語版だから?原因不明。bash使いたいんだが。 と思ってたら、ツイッターで見かけたこの記事。 手動でAnniversaryUpdateを適用できるらしい。 https://support.microsoft.com/ja…

fedora ffmpegでハイビジョン映像tsから必要な部分だけ切り出す(トリミング)

// オリンピック男子体操を録画したハイビジョン.tsから、必要な部分だけ切り出したい。tsファイルから切り出すときは、-acodecオプションで音声を変更しないとうまくいかないらしい。 コマンド ffmpeg -ss 00:02:15 -i 20160806_222559.ts -vcodec copy -ac…

RaspberryPi 3 omxplayerの音量UPして動画再生するには --vol +1500 オプションを付ける

// omxplayerで動画再生するスクリプト作ったけど、再生時の音量が低い。音量UPするには --vol +n オプションを付ければいいらしい。 $ vim play_omxplayer_VOLUME-UP.sh $ omxplayer --vol +1500 ファイル名.mp4 --vol +1500 くらいだと、ちょうどテレビの…

bash lastコマンドで得たログイン情報を一意化して並べ替え、いつどこからリモート接続したか一覧化する

// 自前サーバのlastコマンドの結果。 左から3つ目のフィールドが、リモートからのログイン情報。これを、ログイン者ごと、最新のログイン時間と一緒に一覧化する。 擬似コマンド SELECT DISTINCT login_user,login_time FROM last_log ORDER BY login_time;…

bash dockerの日本語の文字化けは export LC_ALL=ja_JP.UTF-8 で解決

// docker にアタッチした状態で nginx の index.html に日本語を書いたら文字化けした。調べて、以下で解決。 ーーー dockerにアタッチた状態で # export LC_ALL=ja_JP.UTF-8 一応、実験した docker のバージョンも載せておく。ホストOSは fedora20、docker…

bash docker の最新版をfedoraにインストールする

fedoraに最新のdockerをインストールしたい。 # yum -y install docker-io だと、バージョン1.5がインストールされてしまう。かなり古いからダメ。 ーーー 最新版のdockerインストールは以下のコマンドでできるらしい。 # curl -sSL https://get.docker.com/…

bash dockerの削除は sudo yum erase docker-io で行う(末尾 に -io が付く)

dockerでエラーが出た。 # docker run --privileged -t -i -d -p 7071:80 -v /mnt:/mnt --name example-nginx-binbash centos:7 /bin/bash Could not reach any registry endpoint でエラー。 ーーー dockerをUpgradeすれば直るらしい。 # sudo yum upgrade …

bash byobuで画面サイズが合わない時は、F9(環境設定)で自動アタッチをオフると解決する

RaspberryPiにsshログインすると、自動的にbyobuにアタッチされる。が、画面サイズがどうもおかしい。前にiPhoneからsshしたときのサイズが残ってしまっている。 どうにも困ってたけど、F9から環境設定を変えたら解消した。 F9から環境設定に入り「Byobu cur…

bash rsync + ssh で、Dropboxにあるフォルダの中身を、別PCのフォルダ内に同期する

// やりたいこと PC1の下のtxtやpdfを、PC2やPC3に同期する(バックアップしたい)。赤文字を、青文字のところに退避したい。 ーーー PC1 Dropbox sh ファイル1.txt ファイル2.pdf PC2 Dropbox2 sh ファイル1.txt ファイル2.pdf ファイル3.xlsx PC3 Dropbox_…

php ブラウザ上でPINGを飛ばしてサーバの生存確認をする

// WakeOnLanで起動させた遠隔地のサーバが正しく起動したかどうかを確認したい。 構成 ①サーバ(192.168.3.11) 普段はスリープ状態。WakeOnLanで起動させる ②RaspberryPi(192.168.3.9) サーバのすぐ隣にある。Webサービス(Apache)あり。PHPあり。 やる…

RaspberryPi 3 に他のラズベリーパイ(初代)のSDカードを認識させてファイルを救出する

// 一番はじめに買ったRaspberryPi(初代)の設定を変えたら、動きがおかしくなってしまった。LANの接続を変えたせいか、sshできない。 これが初代RaspberryPi。LANケーブルは挿さっているが、IPアドレスをDHCP取得できていないのか、できていても何番が振ら…

RaspberryPi 3 自宅と職場それぞれの無線環境に固定IPで自動接続する(複数WiFi対応)

// RaspberryPi(USB無線LAN子機付き)を持ち運んだ先で、自動でWiFiに接続されるようにしたい。 ↓ 青く光るのが無線LAN子機 RaspberryPiの電源さえ入れれば、自宅にいるときは自宅のWiFiに、職場なら職場WiFiに、自動で繋がるようにする。 ーーー 仮に 自宅…

RaspberryPi 3 omxplayerのテレビ出力音量はキーボード(+/−)でコントロールできる

// RaspberryPi 3 でmp3を再生しっぱなしにして、テレビでラジオや音楽を流している。音量調整はテレビのリモコンでやってたけど、omxplayer からもコントロールできるらしい。 わかった部分でまとめ。 ーーー キーボード ー(マイナス) 音量を下げる +(…

RaspberryPi 3 でCD-ROMから音楽をリッピングする

知り合いバンド自作のCD-ROM。もらったは良いけど、うちにはコンポとかラジカセとか無い。 RaspberryPi3 + BUFFALO製のDVDドライブ で音楽ファイルにリッピングする。 ーーー 準備 ドライブはこれ。BUFFALO製「DVSM-PN58U2V-BK」。 RaspberryPi3はこれ。 DVD…

RaspberryPi 3 vimrc(syntax on、set number)で文字色&行番号を表示する

// RaspberryPi3 を買ってから、何でかvimに文字色が付かないなぁと思ってたらvimrcを変更するのを忘れてた。 $ sudo vim /etc/vim/vimrc (変更前) "syntax on (変更後)syntax on ← コメントを外す 変更は即座に有効になるらしい。文字色がついた。 つい…

RaspberryPi 3 に youtube-dl をインストールする

つべ動画が必要になり。ソース消しちゃってたのでUPしたのをDLしたい。母艦fedoraには youtube-dl が入っているけど、別の事情で今スリープモードで寝ちゃってる。 なので、常時起動(電気食わず)の RaspberryPi 3 にも youtube-dl をインストールして使え…

raspberryPi 3 ソフトバンクセレクションのワイヤレスのワンセグTVチューナー(SB-TV01-WFPL/BK)をラズパイで使えるか試す

昔買ったソフトバンクのワンセグTVチューナーをLinuxで使えるかフト試したくなった。 機器はこれ(SB-TV01-WFPL/BK)。 本来は iPhone/iPad や Android でテレビを見るための機器。この辺の記事が詳しい。 http://blog.jinkimura.com/2011/12/12/3407 こん…

fedora BUFFALOのUSB無線LAN子機 WLI-UC-GNM をLinuxで使う

母艦サーバfedoraを無線LAN化する必要が出てきた。 サーバ本体はこれ。右に青く光るのが今回挿したUSB無線LAN子機。 USB無線LAN子機はこれ。WLI-UC-GNM。 http://buffalo.jp/product/wireless-lan/client/wli-uc-gnm/ とりあえず lsusb してどう認識されてい…

Android bashからadb shell使って電話帳データをバックアップする

引越しでバタバタしている。光回線もNTT西から東に移るから色々面倒。こういうときにデータを無くす。光回線の契約と合わせて携帯まで変えちゃって、気づいたら電話帳ない!とか。物理的な移動する前に、電子データをバックアップしておく。 ーーー 電話帳は…

RaspberryPi 3 をh264動画変換サーバにする(twitter情報 mpegts2h246.sh を試す)

// 前2記事の続き。 min117.hatenablog.com min117.hatenablog.com twitter で情報をくれた人がいた。 技術者見習いの独り言: Raspberry PiでH.264エンコード これはかなり期待。 ーーー #!/usr/bin/bash # # Usage: mpegts2h264.sh <src.ts> <dst.mp4> # program_no=$(ffmpeg</dst.mp4></src.ts>…

fedora docker起動エラー( Error running DeviceCreate (ActivateDevice) dm_task_run failed )

// 2016/6/5(日)。dockerの起動エラーに遭遇。 dockerサービスのkill(# systemctl stop docker)をし忘れたまま、それを動かしてるOS(fedora)ごと再起動してしまった。直後からdockerが起動エラー。 「dm_task_run failed」となってしまう。 # docker s…

RaspberryPi 3 をh264動画変換サーバにする(ハードウェアエンコーダをgstreamerで使う)

前記事でうまくいかなかった。あのときはRaspberryPi B+だったからかも。 min117.hatenablog.com RaspberryPi 3 を買っているので再挑戦する。ちなみに RaspberryPi 3 は、ハードウェアもパワーアップしている。 min117.hatenablog.com ーーー 進め方はこの…

iPhone5 に入っている画像を無線LAN経由で取り出す(脱獄後ssh、scp)

// 前記事で脱獄したiPhone5。シェルが使えるので何でもやり放題。 min117.hatenablog.com iPhoneで取った写真を取り出すのに、わざわざMacBook Airに接続して…とかダルいので、無線LAN経由で取り出す。 ーーー まずは ssh で接続できることの確認。 iPhone…

bash if文のカッコ[[ ]]で正規表現/RaspberryPi(omxplayer)でテレビをMV動画プレイヤーにする

// 拡張子mkvとmp4とwebmが混在したフォルダ内から、mkvのものだけを抜き出して、ファイル名に「Pick」または「レーザー」が含んだものだけを再生する。 ーーー フォルダ内はこれ。 $ for i in *mkv; do if [[ "$i" =~ .*Pick.* || "$i" =~ .*レーザー.* …

bash if [ "$i" -le 10 ]; は10を含む

// 前記事の続き。どうも手が覚えてない。 min117.hatenablog.com ーーー 「eは含む」で覚える。 ① -le は 末尾の10 を含む。 $ for i in `seq 1 10`; do if [ "$i" -le 10 ]; then echo "$i"; fi; done ② -ge は最初の 1 を含む。 $ for i in `seq 1 10`; d…

RaspberryPi 3 国際宇宙ステーションISSからのストリーミングustream映像をテレビに映す

// このサイトの通りに進める。 Watch Live Video of Earth on your Raspberry Pi - miguelgrinberg.com パッケージ管理ソフト python-pip のインストール(既に入ってた)。 $ sudo apt-get -y install python-pip pipを使ってlivestreamerのインストール。…

bash PythonでFizzBuzz

// FizzBuzzって色々気づかせてくれるからたまに書くことにする。 ーーー Python2.7 特有 ・文頭に # -*- coding:utf-8 -*- しないと日本語がエラーになる ・字下げ必須 行の終わり ・関数定義defの最後には : が必要。 ・if文、else、elifの最後にも : が必…

fedora Go言語をインストールする

この記事が良かった。これどおり進める。 gvmでgoをバージョン指定で簡単インストール - Qiita GVMのインストール。 $ bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer) $ vim ~/.bash_profile で編…

Windows Server 2016 Technical Preview 4 でdockerコマンドが動く

前にインストールまでしたWindows2016。 Windows Server 2016 Technical Preview 4 をインストールしてDockerを試す - min117の日記 dockerコマンド叩いたらスンナリ動くようでびっくり。 このへん参考。 Windows コンテナー クイック スタート -Docker | MS…

Windows 10 InsiderPreview Build 14316 .bashrcを確認

// Windows10のbashが実用か試し中。alias切って使い勝手よくする。 コマンドプロンプト起動→bash と入力してBashを起動。プロンプトは#だから、最初から管理者になっている。 # pwd # cd ~ # cat .bashrc Dropbox経由でRaspberryPi3の.bashrc持ってきてまん…

Windows 10 InsiderPreview Build 14316 で開発者モードをONにする

// Windows10 で開発者モードをONにする方法 Cortanaの入力部分でcmd→コマンドプロンプト起動 gpedit.msc グループエディット画面が起動するので、画像の2つをEnabledにすればOK。 Windows10でbashを使おうとして「開発者モードが必要」と言われたので、上記…

Windows 10 InsiderPreview Build 14316 でbashを試す(その2)

// 前記事の続き。 min117.hatenablog.com Fastリングにいるのに、いつまで経っても Build 10586 のまま。肝心の Build 14316 に上がる気配がない。 やむを得ないので Build 14316 のISOからインストールする。 https://cloud.mail.ru/public/8bSX/LSJg6o7nS…

bash PT3でハイビジョン配信したサーバでcvlcクライアント上げてテレビ視聴開始スクリプト

Macのbashからコマンド一発で、遠くにあるサーバディスプレイにテレビ画面を映したい。 サーバ(PT3装着)からはハイビジョン配信(recpt1)して、そのサーバ上での映像受信(cvlc)してディスプレイに映すことにする。処理を一度に行うスクリプト組んだ。 …