それマグで!

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

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

grepコマンドでファイル名だけを取り出す。

grep してマッチした行ではなく、ファイル名が欲しい

検索したキーワードを含むファイル名を取り出して、それを全部開いて処理したいときに

grep -l 

-l をつけるとファイル名だけを取り出すことが出来る。

覚え方

l なので line ですね

関連資料:その他のgrep コマンドの活用方法など

grep で特定のディレクトリを外す - それマグで!

特定の拡張子(*.php)のファイルだけをGrepして検索したい。 - それマグで!

grepで逆検索 (マッチするモノを除外)でマッチしないものを探す - それマグで!

unar/lsar コマンドで指定したファイルを取り出す。ほとんどのアーカイブファイルを扱える。

unar / lsar コマンドが便利

unar コマンドで展開すると文字化けがあまり発生しない。

unar とペアになってる lsar コマンドも文字化けを余り起こさずにファイルを取り出せる。

また展開できる

指定したファイルだけを取り出すには

lsar で一覧したファイルの中から、指定したファイルを取り出すには次の方法で出来る。

unar sample.zip 'img001.jpg' 

指定したファイルを標準出力に取り出すには

いちいちディレクトリを作られるのが面倒なので、指定したファイルだけをぱぱっと取り出して標準出力に取り出してしまうと便利だった。

unar sample.zip 'img001.jpg' -r -o - > out.jpg

ただし日本語は通らなかった。

これは動かなかった。( mac 版での確認 )

unar sample.zip 'サンプル/img001.jpg' -r -o - > out.jpg

かわりにワイルドカードが使える。

日本語が入ってた場合はもう絶望的ですが、ワイルドカードを使うことである程度は回避することが出来る。

unar sample.zip '*/img001.jpg' -r -o - > out.jpg

ちょっとしたトリックですが、アーカイブディレクトリ内部にファイルがかぶってなければだいたいうまくいく。

日本語がマッチしないのは文字コードの問題かも

日本語がマッチしないのは、ZIP内部のファイル名がCP932 でLinux文字コードUTF-8 のためかもしれない。 windows め・・・

関連資料

http://takuya-1st.hatenablog.jp/entry/2016/08/03/145534

mac wifi を再起動するコマンド( 切断、起動、指定したSSIDに接続

macWifi をコマンドから操作できると楽だよね

切断して、オフして再起動して、接続する。

sudo airport -z
sudo networksetup -setairportpower en0 off
sudo networksetup -setairportpower en0 on
networksetup -setairportnetwork en0 0001docomo

これをスクリプトにしておけば、びっくりしなくて済む。macOS XWifiは優先度を高く設定してても、電波が強い方を優先するので、意図しないSSIDに繋いだりするので、注意が必要ですね。

切断

sudo airport -z

ネットワークオフ

ifdown コマンド相当

sudo networksetup -setairportpower en0 off

ネットワークオン

ifup コマンド相当

sudo networksetup -setairportpower en0 on

指定したSSIDにつなぐ

networksetup -setairportnetwork en0 0001docomo

これをまとめて使うって公衆無線LANと戦う

公衆無線LAN飛んでるととんでもないところにつなぐので、これで確実に接続を試行できる。

なぜか、再起動を挟まないとMacWifiDHCPや802.1認証でタイム・アウトしちゃうとその後の接続が全ておかしくなるんだよね。。。。

公衆無線LANが飛んでると便利な半面で、適当な業者は本当に迷惑だわ。