タグ

ブックマーク / kaworu.jpn.org (13)

  • GNU Screenのセッションを管理する screenie

    このドキュメントの内容は、以下の通りです。 インストール 参考サイト 使い方 Unixユーザが利用する神器の1つ GNU Screen ネタです。 screenie は、 GNU Screenの複数のスクリーンセッションを簡単に管理できます。 screenieを使うことで、screenを対話的に作成したり、アタッチしたりすることができます。 下記のコマンドを打たずに、ほとんど選択するだけで操作可能です。 screen -ls screen -S foo screen -rd foo インストール cd /usr/ports/sysutils/screenie/ sudo make install clean portinstallコマンドでインストールする場合 sudo portinstall /usr/ports/sysutils/screenie/ 参考サイト アクセスできないかも。。

  • vim カレント行をコマンド実行結果と入れ換える

    vimからコマンドを実行し、その結果をバッファに取り込むことが可能です。 それは、 :r!pwd などとして行います。 :r!コマンド の場合、カレント行の次の行に挿入されます。 カレント行をコマンドの実行結果と置き換えるには、 :. を使用します。 カレント行をdateコマンドの実行結果と入れ換える :.!date その結果、カレント行は、dateコマンドの実行結果となります。 参照しているページ (サイト内): [2009-03-28-1] スポンサーリンク

    poppen
    poppen 2008/12/28
  • FreeBSD 標準入力 stdinをtarする方法

    FreeBSDのtarコマンドで標準入力(stdin)から入力したデータを アーカイブする方法について説明します。 ほかのOSのtarコマンドだと指定方法が異なる可能性がありますので、 ご利用のOSのtarコマンドのmanをご参照ください。 stdinからの入力を指定するには、 FreeBSD の tarコマンドの場合、 @-を指定します。 tar zcfp - . | tar zcfp /tmp/f.tar.gz @- 関連 [2008-07-10-1] tarの標準出力 標準入力を使いこなす方法 [2008-07-09-2] tarコマンドの使い方 参照しているページ (サイト内): [2009-03-08-1] [2008-08-21-1] [2008-07-10-1] [2008-07-09-2] スポンサーリンク

  • JavaScript jQueryでJSONPを扱う方法 $.ajax

    このドキュメントの内容は、以下の通りです。 ajaxの使用例 サンプルプログラム 実行例 JavaScriptライブラリ jQueryでJSONPを扱うには、 $.ajaxを利用します。 ajaxの使用例 callback関数は、jQueryが自動的に生成してくれます。 <script type="text/javascript"> $.ajax({ url: "https://example.com/jsonapi", dataType: "jsonp", data:{ param1: value1, param2: value2 }, success:function(json){ // 正常時にここが実行されます。 }, error:function(){ alert('error'); } }); </script> callback関数を指定するパラメータがcallbackでない

  • Google Social Graph APIとは その1

    Google Social Graph APIは、Web上から友達関係を抽出した情報を 提供してくれます。 Google Social Graph API http://code.google.com/apis/socialgraph/ GoogleのSocial Graph APIは、XFNやFOAFの情報を利用します。 XFN(XHTML Friends Network) FOAF(Friend Of A Friend) XFN XFNは、microformats形式で、ソーシャルネットワークのリンク情報を 表現します。 XFNの定義 http://gmpg.org/xfn/ http://gmpg.org/xfn/11 FOAF FOAFは、RDF形式で、ソーシャルネットワークのリンク情報を表現します。 http://www.foaf-project.org/ http://ja.w

  • Google Social Graph APIとは その2

    Google Social Graph APIにedoパラメータをつけて、APIを実行するとqのURLを基点にノードから外に出ているエッジの情報を返します。 http://socialgraph.apis.google.com/lookup?q=http://twitter.com/whoami&pretty=1&edo=1 twitter的にいえば、基点の人がfollowしている人の情報を返します。 nodes ->URL ->nodes_referenced 今後は逆に、ediです。 ediは、URLのノードに対して、向かっているエッジの情報を示します。 つまり、twitter的にいえば、基点の人をfollowしている人たちの情報を 返します。 http://socialgraph.apis.google.com/lookup?q=http://twitter.com/whoami&e

  • vim インデントの深さに合わせて貼り付けをする方法

    vimでヤンク(y)して、貼り付け(p)を頻繁にします。 プログラミングなどをしていると、あるブロックをコピーして、 別のところに貼り付けを行います。 インデントが異なる場合、貼り付けを行ったあとに、範囲選択して フォーマッティング(=)を実行しますが、これを毎回やるのは面倒です。 この面倒な貼り付け後のフォーマッティングを自動的に行うには、 ]p を利用します。 ]pは、カレント行にあわせた貼り付け(p)を実現してくれます。 カレント行にあわせた貼り付けなので、カレント行の影響を受けますので 貼り付け時には若干の注意が必要です。 カレント行に上に、カレント行にあわせた貼り付けをするにはpの場合と同じで ]P です。 または、]Pよりも効率的なのは、 [p です。カレント行の上に、カレント行にあわせた貼り付けをしてくれます。 vimはコピー(yank)&ペーストが非常に楽にできますが、この

    poppen
    poppen 2008/08/17
  • Unixシェルスクリプト shで何度も書くエラー処理関数 errx warnx

    Unixのsh(シェル)でスクリプトを書いていると、当然、エラー処理をする わけです。エラーが起きたらstderr(標準エラー出力)に吐いたり、 クリティカルなエラーが起きたらstderrにメッセージを出力して、 適当な終了ステータスで終了したり、ということをします。 C言語で言えば、errx(3)やwarnx(3)の処理です。 Perlで言えば、dieに該当したりします。 そういった、何百回も書きそうなコードの例です。 errx()は、第1引数に終了ステータス。 errx()は、第2引数以降は、stderrに出力するメッセージです。 何個引数があってもかまいません。 warnx()は、すべての引数をstderrに出力します。 #!/bin/sh errx() { r=$1 shift echo "$@" >&2 exit $r } warnx() { echo "$@" >&2 } #

  • vim 最後の置換を繰り返す方法

    vimエディタは、UnixでもWindowsでも使えるステキなエディタです。 テキストを編集していると、色々コピペするたびに、文字列を置き換えたり、変数名や用語を一気に修正したいときがあります。そんなときは、文字列の置換機能を利用します。viだと:sコマンドを使います。 vimエディタで文字列の置換を行うには、 :%s/pattern/replace/ とか :%s/pattern/replace/g とやります。 最後に実行した置換を繰り返すときは、 / C-p <CR> とか / C-f k <CR> とか q/ k <CR> とかして、検索の履歴(ヒストリ)をたどってもいいですが、いずれも面倒です。 最後に置換を繰り返すには、下記コマンドを使います。 g& これは、1つのファイルで置換をしたあとで、別のファイルに移動して、同じ置換を繰り返すときなどに非常に役に立ちます。 これだけで、

    poppen
    poppen 2008/07/13
  • Linux/Unixのセキュリティ sudo vi/lessなどを禁止するときの対応策 sudo edit, sudo -e

    セキュリティのためsudoコマンドを利用して、オペレーションを することがあると思います。このときにsudoersで実行可能な コマンドを限定することで、さらに安全になります。 そこで、出てくるのが、 sudo vi や sudo less がしたいとか 言われたりします。 sudo viを許可するとどうなりますか? viコマンドは、外部コマンドを実行することができるため、 sudo viで起動したroot権限を持つviは、root権限でコマンドを 実行することができます。viからコマンドが起動されるため、 sudoコマンドの設定の影響を受けません。 ようするに、何もかも許しているのとなんら変わりません。 lessも同様にコマンドを実行することができます。 sudo less file で実行したlessコマンドからcshを起動すれば、 root権限のシェルが起動されます。 このような任意

  • vim カレントの段落をビジュアルモードで選択する方法

    FreeBSDユーザの間で大人気のエディタvimについて。 vimでドキュメントを編集したり、プログラムを書いたりしています。 このブログも元データはvimで編集しています。 テキストを編集していると、yy して p してと文や段落のコピーや移動を したり、ddしたり、3ddしたりと削除をなんども繰り返します。 選択には、3yyしたり、Shift-vでビジュアルモードで選択したりして、 dしたりyしたりします。 それはそれでいいのですが、段落を丸ごとヤンクしたり、削除するときに、 jやkで目的の頭まで移動して、Shift-vでビジュアルモードで選んで、jで 終端まで移動したりする、そんな範囲選択をしていませんか? カレント(カーソルの今いる)の段落を簡単にビジュアルモード(visual mode)で選択する 方法があります。 ipは、inner paragraphです。 vip vipを使

    poppen
    poppen 2008/04/25
  • vimのvimdiffで差分をコピーしたり、貼り付けたりする方法

    vimのdiff機能 vimdiff は非常に便利です。 Vim Diffの機能を知らないとかなり損してるのではないかと思います。 vim -d a.c b.c で縦分割で、2つのソースコードを差分を比較しながら編集することが できます。 #include <sys/types.| #include <sys/types | --------------------| #include <stdbool.h --------------------| int | int main (int argc, char| main (int argc, cha int a,b ; | ------------------- このように差分があります。 --------------------| #include <stdbool.h dp dpで、現在のバッファから他のバッファへコピーします。 d

  • sshブルートフォースアタックを防ぐiptablesを使ったblocksshd

    sshdへsshブルートフォース攻撃を受けていませんか? blocksshdのインストール % cd /usr/ports/security/blocksshd/ % sudo make install clean 下記のファイルがインストールされます。 /usr/local/man/man1/blocksshd.1.gz /usr/local/bin/blocksshd /usr/local/etc/blocksshd.conf.sample /usr/local/etc/rc.d/blocksshd.sh blocksshdの設定ファイル /usr/local/etc/blocksshd.conf になります。 ファイルが存在しない場合は、 /usr/local/etc/blocksshd.conf.sample をコピーしてください。 # vim: syntax=perl $cfg

  • 1