シェルスクリプトは長くなると処理の境界が不鮮明になりがち。 コメントで処理の境界を表現する工夫はよく見かけるが、もっと良い方法はないか考えてみた。 :コマンド、&&演算子、複合コマンド()や{}を組み合わせて書くと、処理の境界線がはっきりする。
Network monitoring on Linux This post mentions some linux command line tools that can be used to monitor the network usage. These tools monitor the traffic flowing through network interfaces and measure the speed at which data is currently being transferred. Incoming and outgoing traffic is shown separately. Some of the commands, show the bandwidth used by individual processes. This makes it easy
B! 349 0 0 0 多段sshについて、ターミナルからsshを直接使う場合と WindowsでのPuTTYでの設定について、 久しぶりに設定をしなおしたのでそのまとめ。 ~/.ssh/configで多段接続 同じ踏み台サーバーを持つ物を一括指定 複数の踏み台サーバーを経由してログイン Windows+PuTTYで多段ssh plinkを使用する方法 ログインサーバーにログインしてさらにsshコマンドを実行する ショートカットの作成 Gitサーバーに対する多段接続 ~/.ssh/configで多段接続 ターミナルからsshを使うときには~/.ssh/configファイルが設定ファイルとして 使われます。 直接外部からログインできない様なサーバーに踏み台サーバーを通って ログインするときに、毎回踏み台サーバーにsshしてそこから また入りたいサーバーにログインして。。。は面倒なので そこ
odz buffer - プロセスが開いているファイルを確認する ls -l /proc/`pgrep -n java`/fd lsofでも調べられます。 lsof - list open files lsof うにょうにょと結果が出てきます。が、多すぎて訳わからん。 -pオプションでプロセスID指定 ### プロセスID指定 lsof -p 12345 ### バッククォート使うとこんな感じ lsof -p `pgrep -n java` -cオプションでプロセス名指定 lsof -c java -uオプションでユーザ指定 lsof -u hoge -iオプション [@IPアドレス:ポート番号] listenしてるポートを出力。指定したポートのみ表示することもできる。 lsof -i # Listenしてるのずらずら表示 lsof -i :22 # ssh lsof -i :22,80
終了ステータス 終了ステータスとは? コマンド終了時には「終了ステータス (exit-status)」と呼ばれるコマンドの成否を表す数値が特殊変数 $? に自動で設定される。 各コマンドにより異なるが、一般的には、 コマンド成功時には「0」 失敗時には「1」(コマンドやエラーの種類によっては 0 以外) が設定される。 → 直前に実行したコマンドの成否は、特殊変数 $? に設定されている値で確認する。 終了ステータスを設定 シェルスクリプトでは exit コマンドに指定したパラメータ (0 もしくは 1 ~ 255 の正の整数値のみ可) が、そのシェルの終了ステータスとなる。シェルスクリプトにおいても正常終了時は exit 0 で、異常終了時には exit 1 で終了するようにするのが慣例である。 関数も同様に return コマンドに指定したパラメータが終了ステータスとなる。 → シェル
毎月15日は自宅サーバのバックアップが実行される日です。バックアップには20時間ほどもかかってしまうわけで、実は15日は凄くレスポンスが低下する日です。ロードは通常時の約3倍の3〜5程度になり、Disk I/O のパフォーマンスが極端に劣化します。 もっともその原因はバックアップの手法が悪いのです。 小さい HDD にバックアップしているために、元々の HDD を tar cvfz 使って圧縮しながらバックアップしているので CPU も凄く喰うんです。こりゃ HDD を増設して差分でバックアップする rsync 方式に変えなきゃ・・・と思いつつ今月もいつもの日が来てしまいました。 さて、今日はいつもにもまして shell での応答が遅いのでプロセスの優先度を変更することにしました。コマンドは覚えてなかったけど優先度設定コマンドがあることは知っていたので調べてみました。 renice - 実
ネットワーク上に流れるパケットをモニタリングする。オプションとして条件式を指定すれば,取得したい情報にフィルタリングしてパケットを取得できる。通常は,root権限をもつ場合にのみ利用可能。 tcpdump [-f] [-l] [-n] [-N] [-R] [-S] [-t] [-v] [-x] [-X] [-c パケット数] [-i LANインタフェース名] [-s データ長] [-w ファイル名] [-r ファイル名] [-F ファイル名] [条件式]
(タイトルは釣りです) いい加減、>/dev/null 2>&1と書くのをやめたらどうか - DQNEO起業日記 この記事のタイトルが twitter で流れてきたのを見て、「そうだ!出力を /dev/null に捨てるなんてとんでもないよね!」と思ってよく読んだら /dev/null に間違いなく捨てる方法だったのでつい crontabに > /dev/null 書いたら椅子投げる 2012-06-13 00:01:17 via YoruFukurou とつぶやいてしまったのですが、では出力を捨てないためにはどうすればいいのか。現時点での個人的ベストプラクティスを書き留めておきます。 デフォルト : メールで送る (MAILTO) せっかく cron daemon がログを捨てないためにわざわざメールで送ってくれるのに、それを > /dev/null で踏みにじるとはひどい。 とはいえ、
今更感があるかもしれませんが紹介。 stressコマンドを使うと、CPUやメモリ、ディスクに対して意図的に負荷を与えることができます。 どこで使うかというと、、、高負荷時のシステムの挙動を見たい場合、AutoScaling等の負荷状況に応じて自動でスケールアップ/アウトさせるための仕組みのテストをしたい場合、部屋が寒いときにPCに発熱させたい場合wwwなどで使えるのかな、と。 Stressをインストール CentOSやRedHatの場合は、DAG(rpmforge)のリポジトリがあるので、ここのパッケージからインストールしましょう。 DAGをyumのリポジトリに追加する場合は、以下リンクから(CentOS5[x86_64]系の2010/05/14時点の最新版は)"rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm"をダウンロードして、rpmインストールしま
いつも KeySnail でお世話になっている id:mooz さんが,percol という超絶便利コマンドを作ってらっしゃいます.このコマンドはとてもライフチェンジングなコマンドなのですが,あまり Web 上に情報がないので紹介がてら布教してみようと思います. percol のインストール&使い方 percol は入力の1行を1候補として,部分一致かつ AND 検索で絞り込みし,選択した候補を出力するコマンドです.端的に言えば Emacs の anything.el のコマンド版です. インストール方法や基本的な使い方は github リポジトリの README に全部書いてありますが備忘録として書いておきます. $ git clone git://github.com/mooz/percol.git $ cd percol # python setup.py installこれでインス
2008年02月24日22:45 カテゴリLightweight Languages perl - the best friend of find(1) find(1)ネタというのも、定期的にネットを賑やかにする時候ネタになりつつあるようです。 いまさらxargsの便利さを主張してみる findでファイル検索入門 - builder by ZDNet Japan というわけで、いまさらfindとperlの相性のよさを再確認してみることにしてみます。 基本形 まずは、これを覚えておきましょう。 find [options and args of find] -print0 | perl -l0ne 'perl program' findが見つけたファイルを一つ見つけると、perlの$_にそのファイル名が入るのでそれに対して何らかの処理を行います。 perl側の-l0neというのは、以下と同等
(2012.10.15追記) report-hostではなくslave-hostになってたと@ishikawa84gさんから指摘を受けたので修正。 これで、マスターでshow slave hostsコマンドを打つだけで、スレーブの一覧が表示される。 > show slave hosts +----+------+--+----+ | Server\_id | Host | Port | Master\_id | +----+------+--+----+ | 16800111 | nanikano-dbs01 | 3306 | 16800101 | | 16800112 | nanikano-dbs02 | 3306 | 16800101 | | 16800113 | nanikano-dbs03 | 3306 | 16800101 | +----+------+--+----+ repo
乗り換え記事が多い!ということで、QuickSilverを超えた?と言いながら、Alfredの流れに乗っかろうと思います。(※QuickSilverをほとんど使ったことがないのは秘密です。) Alfredの使い方 - 入門編基本的には設定が難しくなく、すぐに使い始めることができます。 Alfredを起動するには「Option+Space」あとは探したい文字列を入力するだけ こんなのが表示されます。 初期設定の場合は「Control+Space」ではなく、「Option+Spacse」でした。失礼致しました。 アプリケーション例えば「Chrome」を起動したい 「ch」と入力すると候補が上がるのであとは"Enter(Return)" たったこれだけ、たった2文字です。きっとマウスを動かすより早いですよね。ランチャからカチャカチャアプリを起動してるとギークっぽくて楽しいですよ。 Google検
シェルからでも重い処理というのはちょこちょこあって、例えば超デカいログファイルを移動して圧縮したりというお仕事は世界中のあらゆる場所で毎日行われていたりする。コマンドラインからでも大量の圧縮済みログファイルをいっぺんに展開したい、とか。 あるディレクトリ以下に存在するたくさんのファイルを(圧縮済みのものを除いて)全部 bzip2 圧縮したい!と思ったら、とりあえずさくっと次のようにコマンドラインで叩けばいい。 $ find . -not -name '*.bz2' | xargs bzip2 これで、まあそんなに問題なく効率的にbzip2圧縮ができる。だがしかし。 最近は複数コアのCPUが普通に転がってるし、あまつさえHyperThreadingが有効になってたりしてOSから見える論理CPU数がハンパない。普通に8とかある。その一方で複数コアを使用してくれるコマンドというのはあんまりなくて
Mac小技・裏技・初心者Macのショートカット・作業効率化Macでの作業効率アップ!「初心者」が覚えておくべきMacショートカットまとめ2017年5月15日1 @JUNP_Nです。Macでの作業効率をあげるためには「ショートカット」を覚えることが一番の近道。Macを使う上で、"初心者向け"の基本的なショートカットをまとめてご紹介。これで仕事が2倍速になるかも!? Macに限ったことではありませんが、パソコンの初心者と中級者をわける1つのポイントに「"ショートカット"を使いこなせるか」という点があります。 いちいちマウス(トラックパッド)を操作して、メニューを選択〜、右クリック〜、といった操作をしているよりも、キーボードからショートカット1発でサッと済ませられることがたくさんあります。 この記事では、"Macを使い始めたばかり"という超初心者の方が覚えておくと仕事が捗るショートカットをご紹介
以前紹介したMultiClutchですが、便利な使い方を思いついたので、Memo。対象機種はSwipeとかRotateとかPinchとかが使えるけど、4本指のジェスチャには対応していない、Brickの一世代前のMacBook Proとか第一世代のMacBook Airとかです。 新しいMacBookファミリーで採用された4本指のジェスチャが羨ましかったので、僕のMacBook Proでも何とか似たような事ができないかなと思い立ったのが事の発端です。 4本指のジェスチャってのは横に滑らすとアプリケーションの切り替え(Command+tab)、上下に滑らすとExpose(F9: すべてのウィンドウを表示、F11: デスクトップを表示)ができるっていう優れもの。 それをヒントにMultiClutchの設定を考えてみようっていうのが今回の趣旨です。 あと、僕の好みで「デスクトップの表示」の代わりに
自分のメインブラウザは Firefox です。いつの間にか Chrome や Safari といった WebKit 勢に追われる身になっていますが、Delicous Bookmarks や FireMobile Simulator など便利な拡張機能の存在が大きく、なかなか手放せません。 で、自分は会社では Windows、プライベートでは Ubuntu か Mac OS X という環境で Firefox を使っているのですが、困ったことに OS X だけ Firefox が Ctrl ではなくて Command ベースのキーバインドなんですよね。新規タブが Command+T とか、タブを閉じるのが Command+W とかに割り当てられいます。せっかく Ctrl キーが A の隣にあるのに、これでは台無しです。なんでわざわざ押しにくいキーを押さなければいけないのかと小一時間… というわ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く