それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

2016-04-01から1ヶ月間の記事一覧

zip からファイルを取出すサンプル(文字コード対応)

php

php で zip の アーカイブからファイルを取出す zip から表紙(見出し)に使おうと思ったけど、index=0 を取り出したら上手く行かなった。 ファイル名が先頭のファイルだけを取り出す処理をしたら上手く行った。 gist.github.com TODO: 文字コード対応忘れた…

フォルダ移動履歴をスタック出来るpushd/popd はcmd.exe でも使える

まじかよ。cmd.exe 知らんかった コマンド 詳細 pushd 今いるディレクトリをスタックに積んで、指定ディレクトリに移動 popd スタックから取り出して履歴のディレクトリに移動 Microsoft Windows [Version 6.1.7601] Copyright (c) 2009 Microsoft Corporati…

ゴミ箱の削除確認ダイアログを消す

削除確認ダイアログを消すってできたんですね。 知らなかったです。泣きそう ゴミ箱に移動する削除確認ダイアログって邪魔 わざわざ、右クリックメニューで削除を選んでるのに、「本当に削除しますか?」「消すに決まってんだろJK」 消すから削除を選んでる…

cywin で windowsの.lnk のショートカットをシンボリックリンク的に扱う。

Windowsのexplorerで作ったショートカットファイル .lnk Cygwinからみると、lnk が通常ファイルに見えてしまう。 しかし、これをショートカットとしてシンボリックリンクてきに扱うことがべ着れば便利だと思うんですね。 Cygwinで扱うことが出来るショートカ…

Pythonでシグナル(sig term)をハンドリングする。

SIGTERMをハンドリングする。 調べたら、標準パッケージのsignal があった import signal import sys def sigterm_handler(signal_number, stack_frame): some_function_to_clean_up() sys.exit(0) signal(signal.SIGTERM, sigterm_handler) なるほどー これ…

Python で空じゃないディレクトリを削除する方法

Pythonでディレクトリを削除しようとすると os.rmdir だけど import os os.rmdir("/path/to/not_empty_dir") 実行すると not empty で止まる。 OSError: [Errno 39] Directory not empty: ま、当然なんだけど。 消す方法 shell をcall して rm -rf path/to/d…

Python で Ctrl+C のシグナルハンドラをやる

ctrl+ c でシグナルを取得したい たとえばファイルを作っている時に、途中で中断するとか。 その際に、途中のファイルや作業用ディレクトリを消したい。などと KeyboardInterrupt を監視する。 一番カンタンなのが、KeyboardInterrupt を見ることなんだ。 tr…

自宅サーバ・クラスタに朗報 noip で let's encrypt 使える!

ダメ元で noip のドメインにlets encrypt をかけてみた 以前は出来なかったきがしたんだけど、出来た! noip ドメインで lets encrypt のSSL証明書出来たよ。 DDNS関連で使えるのはでかい。 Sakuraのクラウドや、GMOクラウドを借りたとしてもドメインも借り…

知ってたら嬉しいMac のボリュームを「ちょっと」微調整するTIPS

osx

Mac OSX のボリュームを微調整出来るって知ってました? 微調整する方法 option + shift と同時に押す。 ボリューム調節+ ⌥ + shitt ボリューム調節がFn+F12とかになってるとシンドい。 Karabiner でショートカットを登録しておくと良い。 不便なときはKara…

無線LANの認証パスワードを変更する。

osx

mac osx の無線LANの認証パスワードを変更するには 無線LANの設定なので、設定のネットワーク、無線LANを開けてしまいますが、無線LANの設定では、ログイン用(802.x)の認証パスワードを変更することが出来ません。 0001docomo のログインパスワードの設定を…

bin / cue を変換してマウントする

bin/cueファイル出てきた。 いまどきbin/cue もないんだろう。でもファイルが出てきたので中身を取り出そう。 bchunk /path/to/example.bin /path/to/example.cue out.iso bin は まれに img とかいう拡張子になっており。適宜読みかえが必要 https://help.u…

三菱UFJ ワンタイムパスワードトークンのについて、電話したりして調べた。

ワンタイムパスのトークンに切り替わる 三菱UFJがワンタイム・カードが必須化されるので、色々調べて、わからないことは電話して聴いてみた。 ワンタイム・トークンの登録可能時間 2016-04-24現在では、「夜20時」までになっていました。24時間対応じゃ…

CentOS の dnf, yum でプロキシを使う

dnf / yum で プロキシを使いたい。 普通はプロキシを使うなら、次のコマンドをシェルでたたき環境変数を追加したら、シェル経由のネットワークコマンドははコレを使うんだけど。 環境変数だとうまくいかない。。 export http_proxy=http://proxy.example.co…

MacOSX のssh-agent/ssh-addでSSH秘密鍵のパスフレーズをKeychainsに保存する。

osx

ssh-agent でパスフレーズ解除の鍵をストック ssh 秘密鍵のパスフレーズを毎回入力するのを省くには、ssh-agentとssh-add を使う。 ssh-add -K 使い方は簡単。 ssh-add -K path/to/identity -K をつけるとkeychainsにパスフレーズも登録らしい。 ssh-agent …

Javascript で 全角英数→半角英数

JavaScript で全角数値必須とかにイラッと来る? イラッと来ませんか?来ますよね。私もイラッとします。JavaScriptで「全角半角」切替くらいやってほしい。 全角→半角 String.prototype.Zenkaku2HankakuJP = function(){ return this.replace(/[A-Za-z…

Raspberry Pi のオーディオ・デバイスを指定して音を再生する。

USB オーディオを接続して音を鳴らす。 デフォルトのオーディオとしてUSBを設定するのが、楽チンで、優先度をUSB側に変えたら良いのだろうけど。 毎回設定変えてkmod をリロードするのもめんどくさい。 コマンドからオーディオデバイスを指定して音を鳴らし…

Javascript で String#strip がない。。。

String.trim() を代わりに使う " a b c " .trim() よく忘れるのが、左側&右側の削除 " a b c " .trimRight() " a b c " .trimLeft() ついつい、正規表現しちゃうので、コッチのほうが硬いかな どうしても使いたいときは String.prototype.strip = String.pr…

Amazonでプログラミング書籍が半額!!!【半額】春のプログラミング入門書フェア(4/28まで)

半額ですって! 朝ニュース見てビビった。 【半額】春のプログラミング入門書フェア(4/28まで) Amazon.co.jp: 【半額】春のプログラミング入門書フェア(4/28まで): Kindleストア 半額フェアの書籍を取り出してみた。 うーん。イマイチこれっていうのはな…

ruby のマルチスレッドでCPUのマルチコアを使い切れない・・・

ruby マルチスレッド を many core の CPU で動かしても 100% で止まる。 とまるんですよ。i7 のCPUリソース余って勿体ない。 GIL ( global interpreter lock ) ruby がYARVで Global Interpreter Lock の中で動作するので、マルチスレッドでもメニーコアを…

ffmpeg で音のボリュームを調整する。gain 調整

mp3gain 使ってたんだけど ffmpeg でも出来ることに気付いた。 なんだ、ffmpeg 最強じゃん。 ボリュームをアップする ffmpeg -i tes.mp4 -v copy -af volume=10dB out.mp4 ボリュームをダウンする。 ffmpeg -i tes.mp4 -v copy -af volume=-5dB out.mp4 指定…

python でコマンド実行。サブプロセスの終了待ち・強制終了・親プロセスと一緒に殺す。getoutputとcheckoutputについて

python でコマンドを実行するには subprocess モジュールを使う 以前にも書いたんだけど、気になったので、再度調べ直した。 os.popen があるじゃないと思われるかもしれないが、os.popen は内部的に subprocess (shell=True)を使ってるので同じことである。…

ffmpeg は inputにhttp/sftp が使える。

ffmpeg は input に http が使えた。 知らんかった。知らんかった。いちいちcurl とパイプしてた。 ffmpeg -i http//example.com/..../sample.mp4 -options.. output.mp4 sftp も使える。 ffmpeg -i sftp://... sftp を使うには、ffmepg のビルド時に --with…

rubyのspawnで 起動したプロセスを、終了待ちしたり、強制終了したり、親プロセスと一緒に殺す

ruby から外部コマンドを起動する spawn ruby で外部コマンドを呼び出すときに spawn を使って管理してみた。 spawn の特徴とか。 だいぶ昔に導入されたこの機能については、次のスライドが良いみたい。https://staff.aist.go.jp/tanaka-akira/pub/spawn-200…

Kernel.exec の第2引数を使った、コマンド実行のサンプル

exec の引数について 1つだけなら、問題ない。 Kernel.exec("ls") 2つになると・・・ Kernel.exec("ls -lt ") ただし、これはシェル経由の呼び出し。 3つになると・・・ Kernel.exec("ls -lt /") これもシェル経由の呼び出し シェル経由ってのは、sh に引…

ffmpeg で mp4 をiPhone用のストリーミング(HLS)に対応させる。

mp4 を iOS で見るには。 Apacheで動画ファイルを配信するのが一番楽なんですが。 iOS のSafariは、動画ファイル先頭だけ読み込んで、mp4のメタデータ無ければ末尾を取りに行きます。 これが、ネットワークが貧弱なときに時間がかかってしまって結構辛い。 …

stdClass と array の変換と object から arrayへの変換

php

配列とオブジェクトは相互変換が可能です。 たまに忘れそうになるので、メモっておきます。 キャストでobject に変換する。 連想配列(assoc array とか ハッシュ)を stcClass に変換する。 $obj = (object) $arr; キャストでArrayに変換する。 $arr = (arr…

空白を含むファイル名や出力結果を1行ずつbash/forで扱うには。IFS シェルスクリプトの小手先

空白を含むファイル名を扱いたい。 最近のbash 最新版ならナニも考えずに、ファイル名の空白気にせず動くんですよ。 takuya@~/Desktop/tmp$ for i in * ; do echo $i; done ; サンプル-01 [2016-04-05].txt サンプル-02 [2016-04-05].txt サンプル-03 [2016-…

シェルスクリプト(bash/sh/zsh) でシンタックスをチェックする

シェルのファイルの文法チェックをするには bash -n my_script.sh わお、簡単。 ちなみに、他のシェルでも同じ sh -n my_script.sh zsh -n my_script.sh dash -n my_script.sh つまり、シンタックスエラーをチェックするには ${SHELL} -n my_script.sh こう…

Selenium IDEが期待と違うから、クリックしたボタンとリンクをログとる拡張機能書いた。

クリックしたボタンのXpathを記録したい。 Xpathで記録したいんだけど、ルートからのXpathって表記が長くって、可読性低い。つまるところメンテナンス性能が最悪。 xpath を検索条件で保存したいですね・ つぎのようなXpathで保存されるとナニが何かわからな…

JavaScript で、文字列から単語を抜き出す、分かち書きもどきをやる。

js

javascript で単語を取り出したい。 WEBページのリンク要素やコンテツから単語を抜き出したい。 単語を抜き出す正規表現 特定の語句の塊を抜き出しておく。 r=/[一-龠]+|[ぁ-ん]+|[ァ-ヴー]+|[a-zA-Z0-9\-]+|[a-zA-Z0-9]+/g テキストを処理すると送り…