GNU sed This file documents version 4.8 of GNU sed, a stream editor. Copyright © 1998–2020 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A
rsyncで特定のファイル、ディレクトリを除外して転送は--excludeオプションを指定すれば、事足りるんだけど、いくつかのディレクトリとかファイルとかだけ転送させたい。なんてことがあったりする。あんまり情報がないので、とりあえず書いとく。 よくあるのだと全てのディレクトリ、ファイル毎日rsyncしつつ、特定のディレクトリはバックアップを取らないみたいのが多いと思う # /backupにごっそりバックアップ。けど特定のディレクトリは除外 rsync -av -H --delete --force --exclude="/backup/" --exclude="/dev/" --exclude="/proc/" --exclude="/sys/" / /backup # とかリモートのサーバにバックアップとか rsync -avz -H --delete --force --exclude
システム・プログラム 電子・情報工学系 新城 靖 <yas@is.tsukuba.ac.jp> このページは、次の URL にあります。 http://www.hlla.is.tsukuba.ac.jp/~yas/coins/syspro-2001/2001-05-07 あるいは、次のページから手繰っていくこともできます。 http://www.hlla.is.tsukuba.ac.jp/~yas/coins/ http://www.is.tsukuba.ac.jp/~yas/index-j.html ■印刷配布資料 ■復習 ■今日の重要な話 プロセスの考え方と操作 プロセス main() の引数と環境変数 fork() システムコール execve() システムコール wait() システムコール パイプ pipe() システムコール dup() システムコール ■捕捉--数の入出力 U
バイナリ形式で送られたHTTPの生データ(Body)を取得したい場合、cgiモジュールから取得できないようなので代わりの方法を調べてみました。 結論としては、sys.stdinの内容を読み込むことで生データにアクセスすることができました。 サンプルコード import sys file = open("../test.jpg","wb") file.write(sys.stdin.read()) file.close() sys.stdin.close() # とりあえず200のステータスコードを返す print "Content-Type: text/plain" print print "Hello!" これを/cgi-bin/test.pyなどにおくと、http://localhost:8000/cgi-bin/test.pyに送信したバイナリをファイルに落とすことができます。 仕組
4 プロセスの実行 Web サーバには CGI をサポートし、外部のプログラムを実行できるようになっているものが多い。 今回はプログラム中から他のプログラムを実行する exec システムコールについて解説する。 exec システムコール exec システムコールは、そのシステムコールを呼びだしたプロセス上で、別なプログラムの実行を開始するためのシステムコールである。 このため、そのプロセスでそれまで実行されていたプログラムは破棄され、システムコール呼び出しがリターンすることはありえない。 exec() を使う典型的なプログラムは shell である。 Shell はコマンドとして入力されたプログラムを実行するのに、fork() によって新しいプロセスを作り、そのプロセス上で exec() を実行、そのプログラムを実行する。 ↓ fork() ------- | | 親プロセス 子プロセス
研究室の先輩が書いたMakefileでmakeすると、 ld: table of contents for archive: ../lib/libAnalysis.a is out of date; rerun ranlib(1) (can't load from it) というerrorを吐くことがある。 これはLinuxでは起きずOS Xで発生する。 makeするときのどこで発生するかというと、 compile済みobject fileをlibrary(この場合はlibAnalysis.a)にlinkしたいとき。 g++ aho.o libAnalysis.a これを解決するためには、 ranlib libAnalysis.a と打てば良い。 このblack box的な解決方法はwebで探せば見つかるんだが、 なんだかおまじないのようで気持ち悪い。 で、なんでこんなことをOS Xではし
URL="https://bookshelf.jp/cgi-bin/goto.cgi?file=libtool-ja&node=Using+libtool" "libtool/libtoolを使用する"へのコメント(無し) libtoolが人生をより単純にする方法が分かるまで,独自のパッケージで libtoolを使用することを話す意味はありません.この章の例は,標準的なラ イブラリのビルド処理と,libtoolの処理を,二つの異なるプラットフォーム で比較することで,主な特徴を紹介します. `a23' スタティックライブラリのみのUltrix 4.2プラットフォーム. `burger' 共有ライブラリを持つ,NetBSD/i386 1.2プラットフォーム. 独自のプラットフォームの例をこれに続けることが可能で,それは,libtool でインストールされた,前もってコンフィグレーションされて
UbuntuやMac OSXを使っていると、権限の高いオペレーションを実行しようとしたときに、ユーザのパスワードを要求するダイアログが起動します。毎回ハイハイと思いつつ入力しているのですが、ふと考えるとこのセキュリティモデルというかユーザビリティー的に大丈夫なのかどうかと思うようになりました。 例えば、インストーラーでダミーのパスワードダイアログを表示させればマルウェア作者はユーザのパスワードを取り放題だし、OSのファイル保存ダイアログをクラックして、適当なファイル保存のタイミングで同ダイアログを出せば、無知なユーザはホイホイパスワードを入力してしまうのではないでしょうか。Webサイトのフィッシングと全く同じ話です。 このダイアログはそもそも CUIプログラム sudo のラッパーにすぎません。しかし、話はそんなに単純ではありません。CUIの場合は、ほとんどの操作が「能動的」なために、su
本連載を初めて読む人へ:先行き不透明な時代をITエンジニアとして生き抜くためには、何が必要なのでしょうか。それを学ぶ1つの手段として、わたしたちはIT業界で活躍してきた人々の偉業を知ることが有効だと考えます。本連載では、IT業界を切り開いた117人の先駆者たちの姿を紹介します。普段は触れる機会の少ないIT業界の歴史を知り、より誇りを持って仕事に取り組む一助としていただければ幸いです。(編集部) 本連載は、2002年 ソフトバンク パブリッシング(現ソフトバンク クリエイティブ)刊行の書籍『IT業界の冒険者たち』を、著者である脇英世氏の許可を得て転載しており、内容は当時のものです。 ビル・ジョイ(Bill Joy) ―― BSD開発者 ビル・ジョイはウィリアム・ジョイの愛称で、BSD版UNIXの設計を行った人物である。彼が参加したことによりサン・マイクロシステムズは急成長をすることとなった。
講座「文系のためのawkプログラミング入門」 今回は処理結果のデータの出力を学びます。データの出力については二つのことを考える必要があります。ひとつは出力先です。ファイルに出力するのか、コンピュータの画面に出力するのか、それともクリップボードか、などなどです。もうひとつは、出力データの形式です。これは実に様々で、改行をつけて出力するのか、改行なしで出力するのか。また数字であれば、小数点の位置を揃えて見やすくするとか、色んなやり方があります。今回はこのようなデータの出力の基本を学びます。awkでは、処理したデータを出力するときに用いる命令は、print と printf の二つがあります。従ってこの二つの命令の基本を学ぶことになります。 I 出力先の指定 出力先は様々だと上で書きましたが、実はawk自体では、二つの出力先の指定しかできません。標準出力と、ファイルへの出力の二つです。prin
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog こんにちは、オペレーション統括本部(Yahooショッピング担当)の吉野です。 前回お話しさせていただいたlsコマンドをハックしてみようの公開後、多くの方からご意見をいただきました。 その中で目に付いたのは、「ソースコードリーディングはしてみたいがなかなか(時間|機会)がない」というご意見でした。 そこで、今回はソースコードリーディングとして、FreeBSDで動くkillコマンドのソースコードを読んでみたいと思います。 killコマンドとは、ご存じの通りプロセスにシグナルを送るコマンドです。 trussコマンドでトレースしてみても、killシステムコールしか使っていません。 $ truss /bin/kill 12345 kill(
GNU diff の地味だけど便利な機能 最近になって GNU diff の地味だけど便利な機能を2つ知りました。調べてみると、いずれも昔からある機能でした。 --side-by-side は2段組で結果を表示するオプションです。変更されていない行を含めて2つのファイルの内容全体と変更点が表示されるのがポイントです。変更された行の前後数行だけでなくファイル全体をまとめて読みたいときに使えます。デフォルトの表示の横幅は130文字です。必要に応じて --width オプションで変更できます。 こういった用途には meld などの GUI の diff ツールを使えばいいのですが、 ssh 端末しかないような状況で重宝します。 --strip-trailing-cr は行末の CR を無視する機能です。改行コードが CRLF と LF で食い違っているけど、中身はほぼ同じ、というファイルを比較す
D. J. Bernstein UNIX daemontools How to install daemontools Upgrading from previous versions of daemontools Frequently asked questions How to start daemontools The svscanboot program The svscan program The supervise program The svc program The svok program The svstat program The fghack program The pgrphack program The readproctitle program The multilog program The tai64n program The tai64nlocal pr
より実践的なスケールアウトへ 前回までは、スケールアウトの基本的な考え方について説明をしてきました。 しかし、前回までの方法だと、WebサーバーやApplicationサーバーがどうしてもシングルポイントになってしまい、より多くのアクセスを受けた場合に、さばけなくなってしまいます。 それでは、より多くのアクセスをうけることができるシステムの設計はどうすればよいでしょうか? 今回は、より実践的なスケールアウトの方法を紹介していきたいと思います。 DNSラウンドロビンでアクセス分散をする もっとも単純にアクセスを振り分ける方法として、DNS(Domain Name System)の仕組みを活用した方法があります。 DNSラウンドロビンという方法です。 DNSはホスト名に対してIPアドレスを返す仕組みになっていますが、1つのホストに対して複数のIPアドレスを登録することで、複数のIPアドレスをブ
メモリ使用量を比べると Fluxbox=6~7MB に対して、WindowLab=300~600KB なので、リソースが乏しいザウルスには最適。 徒然な覚書 : WindowLab より 2006 年 7 月 29 日に引用 があったので、自分の使ってる sawfish についても調べてみようとして、ハタと困った。プロセスごとのメモリー使用量の調べ方が分かんない。 というわけで、メモリー使用量を調べる方法をメモ。 ps alx 調べ方は、分かってしまえば簡単。次のコマンドを実行する。 $ ps alx すると、ズラーと次のような結果が表示される。 F UID PID PPID PRI NI VSZ RSS WCHAN STAT TTY TIME COMMAND 4 0 1 0 16 0 1896 464 - S ? 0:06 init [5] 1 0 2 1 34 19 0 0 - SWN
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く