ファイル名の拡張子を一括置換するには
bash 上でファイル名の拡張子を一括置換したい場合、以下のようなワンライナーで実行出来ます。例えば .txt を .json に一括置換したい場合はこのようになります。
1 |
|
bash 上でファイル名の拡張子を一括置換したい場合、以下のようなワンライナーで実行出来ます。例えば .txt を .json に一括置換したい場合はこのようになります。
1 |
|
普通にシェルスクリプトを書くと実行結果のみが表示され、『実行しているコマンドそのもの』は表示されません。「試験結果のエビデンスとして、結果と共にコマンドも残したい」「スクリプトをデバッグしたい」といった場合は実行結果だけでなく、実行したコマンドも表示されると便利です。今回は「スクリプト中で実行しているコマンドも表示する方法」をメモします。
RADIUS サーバの構築後にテストを実施する際、「実際に RADIUS クライアントとして設定したネットワーク機器やサーバへ SSH ログインし、RADIUS サーバで上手く認証されるか?を確認する」ことは、もちろん可能です。しかし、他にも(実際のログイン処理では無く)『テストコマンドで RADIUS 認証の挙動を確認する』方法があります。まずはテストコマンドで動作を確認し、上手くいったら実際のログインテストを試す… というのが最もスマートだと思います。メジャーなところでは以下のような方法があります。
今回はこれらの RADIUS のテスト方法について記載してみます。RADIUS サーバには MikroTik の RouterOS を使いました。
プロセスを停止したい場合、プロセス ID を指定して kill を実行します。しかし、pkill を使えばプロセス名だけでプロセスを停止することが出来ます。今回は Ubuntu 14.04.3 環境で pkill を試します。
sudo の実行結果をリダイレクトしようとするとエラーになります。
1 2 |
|
このような場合は sudo sh -c の引数として一連のコマンドを実行します。
1 |
|
参考までに、「-c」オプションは man によると以下のように書かれています。
-c Read commands from the command_string operand instead of from the standard input. Special parameter 0 will be set from the command_name operand and the positional parameters ($1, $2, etc.) set from the remaining argument operands.
CoreLinux 環境で Open vSwitch(以下、OvS)を使えるようにビルドしてみました。手間を考慮し、スクリプト化してあります。
Tiny Core Linux はフットプリントが非常に小さい Linux ディストリビューションで、Cisco VIRL のような仮想化された検証環境内で複数インスタンスを立ち上げても軽快に動作する、という特徴があります。用途に応じて幾つかの種類があります。参考として記載したサイズは 6.3 用 ISO イメージのサイズです。
追加パッケージも数多く提供されているので Core をベースにパッケージを追加し、カスタマイズしていくのも簡単です。今回は Core を VIRL に登録してみます。
Raspberry Pi2 はもちろん簡単にキーボードやモニタに接続出来ます。しかし、非常にコンパクトなので逆にキーボードやモニタに繋がずに使いたくなってしまいます… そこで、MacBook Air から Raspberry Pi2 を GPIO 経由でシリアルコンソールアクセス出来るように設定しました。