タグ

unixに関するa_bickyのブックマーク (24)

  • Linuxの基礎用語を完全理解するためにエンジニアが作成した「10のミニプロジェクト」とは?

    by Adam Harvey Linuxを利用していると「シェル」や「grep」「プロセス」といった言葉を目にします。エンジニアのCarl Riis氏はそんなLinuxの基礎用語の意味や仕組みをさまざまなウェブサイトから学習し、「10のミニプロジェクト」を作成することでスキルを向上させたとして、その詳細を公開しています。 Getting better at Linux with 10 mini-projects - carltheperson https://carltheperson.com/posts/10-things-linux GitHub - carltheperson/10-things-linux: Getting better at Linux with 10 mini-projects. https://github.com/carltheperson/10-thing

    Linuxの基礎用語を完全理解するためにエンジニアが作成した「10のミニプロジェクト」とは?
  • コマンドラインツールを作るときに参考にしている資料 | SOTA

    コマンドラインツールについて語るときに僕の語ること - YAPC::Asia Tokyo 2014 コマンドラインツールが好きで昔からつくってきた. 今年のYAPCで,そのコマンドラインツールをつくるときにどういうことを意識して作っているのか?どのような流れで開発しているのか?といったことを語る機会をもらえた. 具体的な内容については,是非トークを聴きに来てもらうとして, スライドをつくるにあったって過去に読んだ資料や,よく参考にしている記事を集め直したので,その一部を参考資料としてまとめておく. UNIXという考え方 UNIXという考え方 Mike GancarzによるUNIXの思想や哲学をまとめた.古いが全然色あせてない. コマンドラインツールの作り方を書いたではないが,これらの思想の上で動くツールはこの思想に準拠して作られるべきだと思う.何度も読んで考え方を染み付かせた. 小さい

    a_bicky
    a_bicky 2018/03/13
  • sudoでリダイレクトをしたいとき - Y's note

    sudoでリダイレクトに失敗 @yutakikuchi_です。 UNIX/Linuxでコマンドラインで実行した結果をファイルにリダイレクトしたい時があります。(例えばPHPのバッチを実行した時に処理のログとエラーログをファイルに書き込んでおきたい。) ユーザに実行権限がないディレクトリのファイルに対してリダイレクトでデータを書き込みたいとき、sudo をつけても失敗します。 次はリダイレクトが失敗する例です。zsh: permission deniedと怒られます。 $ sudo echo 'redirect' >> /var/test/hoge.txt zsh: permission denied: /var/test/hoge.txt うまくいく方法 以下に方法を書きます。私が知る限りでは2つ方法があります。 回避策1 : shのオプションに-cを付ける man sudoを見てみます。

    sudoでリダイレクトをしたいとき - Y's note
    a_bicky
    a_bicky 2013/08/06
    shell の -c オプションを使うか tee を使うとのこと
  • 現場で役に立たないsudoの使い方

    分散システムのFault Injectionの話 NTTデータテクノロジーカンファレンス2017で発表する際に用いたプレゼン資料 https://oss.nttdata.com/hadoop/event/201710/index.html

    現場で役に立たないsudoの使い方
  • はてなブログ | 無料ブログを作成しよう

    日記_2024.8.29 鞍馬と貴船 29日は鞍馬と貴船に行ってきました。こんな天気でバイクは無理、でも引きこもるのも嫌なので前々から行きたかった鞍馬と貴船に行くことにしました。ただ、いつ大雨が降っても全くおかしくないので天気がヤバそうなら帰ることにします。普通に日帰りできる距離ですから…

    はてなブログ | 無料ブログを作成しよう
    a_bicky
    a_bicky 2013/04/11
    Linux だと i オプション、Mac だと J オプションとな
  • 特定ディレクトリ以下を除いた find をする方法 - hogehoge @teramako

    find . -name "foo" -prune -o -print 同僚から、あるディレクトリ配下で特定ディレクトリ配下を排除したファイルリストが欲しい、何か方法はない? と訊かれた。find の !使えば良いじゃんと思ったが、前提として環境はAIX*1だ。-pathオプションがない。-pathオプションがあったとしても、find . ! -path "*/foo*"では排除したくないfoobarディレクトリも排除してしまう。 悩みつつはじき出したのがこれ。 まぁ悩んだと言っても実はManpage of FINDの-pathの項に書いてあったのを使っただけだが。ただ、上記例でうまくいく理由を考えることででfindの奥深さを味わった。思わぬ課題を出してくれた同僚に感謝。 findの奥深さ -pruneというのは条件に一致したディレクトリ配下は検索しないオプションだ。ただし、そのディレクト

    特定ディレクトリ以下を除いた find をする方法 - hogehoge @teramako
  • システムコールについてどれくらいご存じですか?

    システムコールについてどれくらいご存じですか?:知ってトクするシステムコール(1)(1/2 ページ) 「システムコール」と聞いて、どういう印象を受けますか? 「難しくて、自分では手に負えない」とか「使う必要を感じない」という方は多いでしょう。しかし、コンピュータを使う人ならどんな人でも、システムコールについて知っておくといろいろトクをするんですよ。(編集部) システムコール? 聞いたことはあるけど…… 企業情報システムや、Webアプリケーション、携帯機器向けアプリケーション、あるいはちょっとしたツールの作成など、なんらかの形でソフトウェア開発に携わったことのある方なら、一度は、「システムコール」という言葉を耳にしたことがあるはずだ。しかし、先に挙げたような分野のアプリケーション開発現場で、明示的にシステムコールを利用する開発者は多くない。 システムコールは、低レベルのプログラミングやカーネ

    システムコールについてどれくらいご存じですか?
  • プロセス、スレッド、ファイバ、タスク、ジョブ、違いを整理してみよう - Schi Heil と叫ぶために

    まずは分かりやすいプロセスとスレッドから。 WindowsLinux などの汎用 OS 上のアプリケーションは一般にプロセスとして動作している。プロセスはプログラムの実行単位である。プロセスは1つ以上のスレッドと、ファイル、ヒープメモリなどのリソースで構成される。一方、スレッドは CPU 利用の単位である。スレッドはそれぞれが専用のスタックと CPU レジスタのコピーを保持するが、ファイルやヒープメモリは同一プロセス内の全てのスレッドで共有する。 スレッドのさらにサブセットがファイバである。スレッドとの違いは切り替え動作にありファイバのほうが軽いというメリットがある。プロセス、スレッド、ファイバの関係はこちらの説明が分かりやすかった。 プロセスはプログラム実行のための固有のメモリ空間を持っており、最も独立性の高い実行単位である反面、起動や切り替えに時間がかかるという特性を持っています

    プロセス、スレッド、ファイバ、タスク、ジョブ、違いを整理してみよう - Schi Heil と叫ぶために
  • 「作りながら理解するファイルシステムの仕組み」関連の最新 ニュース・レビュー・解説 記事 まとめ - ITmedia Keywords

    作りながら理解するファイルシステムの仕組み(11): tarファイルシステムをAndroidに組み込む!! 最終回では、前回使用したAndroid搭載ボードにオリジナルのファイルシステム「tarfs」を組み込む方法を紹介する!(2011/3/10) 作りながら理解するファイルシステムの仕組み(10): Androidをデバッグしメモリダンプからデータを復旧する Android組み込みボードを使って、デバッグしながらファイルデータ管理の内容を探る! 併せて、“実践知”も紹介する(2011/1/13) 作りながら理解するファイルシステムの仕組み(9): 動画・写真などのデータを仮想化する仕組みとは? = Linuxカーネルinodeの仕組み = 今回は、前回紹介した「dentry」が参照している、ファイルの実体「inode」について詳しく解説する!(2010/11/8) 作りながら理解するファ

  • SUIDとは

    SUIDは危険であるという話を聞いたことがありますが、そもそもSUIDが何なのか分かりません。具体的にSUIDとはどういったものなのでしょうか? SUIDとは、実行ファイルに設定される特殊な属性を意味します。UNIX系OSには特殊なファイル(ディレクトリ)属性として、SUID、SGID、Stickyの3つが存在します。それぞれについて、具体的な役割を説明していきましょう。 SUID SUID(Set User ID)は実行ファイルに設定される属性です。通常の実行ファイルは実行者の権限で動作しますが、SUIDが設定されていると実行ファイルの所有者の権限で動作します。 SUIDが使用される例としてはpasswdコマンドが挙げられます。パスワードを変更するということは、実際には/etc/shadowファイルを編集することになりますが、一般ユーザーには/etc/shadowファイルを変更する権限は

    a_bicky
    a_bicky 2012/05/04
    SUID: 所有者の権限で実行、SGID: 所有グループの権限で実行、Sticky bit: 作成者しか改変できない
  • Multiple variable assignments from command output in BASH Using date, read

    It's quite easy to capture the output of a command and assign it in a shell's variable: day=$(date +%d) month=$(date +%m) But, what if we want to perform the same task with just one program invocation? Here comes the power of eval! date(1) outputs a string like "day=29; month=07; year=11" (notice the semicolons I added on purpose at date's custom output) which is a legal shell line. This like is t

    a_bicky
    a_bicky 2012/01/25
    bash で read day month year <<< $(date +'%d %m %y') みたいにすると同時に変数を定義できるとか驚愕
  • findとPerlワンライナーで複数ファイルの文字列を一括置換 - hogehoge foobar Blog Style Beta

    あるディレクトリ以下のファイルの文字列を一括置換する方法。 find,xargs,perlで一括置換 カレントディレクトリ以下のテキストファイル(*.txt)の文字列"hoge"を"foo"に置き換えする場合。 $ find . -type f -name '*.txt' | xargs perl -i -pe 's/hoge/foo/g' 置換前のファイルをバックアップとして残しておきたい場合、perlの-iの後ろにバックアップファイルの拡張子を付けます。 (サンプルでは.bakとしてバックアップファイルを作成) $ find . -type f -name '*.txt' | xargs perl -i.bak -pe 's/hoge/foo/g' $ $ ls -l total 32 -rw-r--r-- 1 foo bar 1100 8 21 00:57 test.txt -rw-

    findとPerlワンライナーで複数ファイルの文字列を一括置換 - hogehoge foobar Blog Style Beta
    a_bicky
    a_bicky 2012/01/25
    文字列の一括置換
  • [O] sedとgrepで、あるディレクトリ以下のファイル中の文字列を一括置換

    sedとgrepで、あるディレクトリ以下のファイル中の文字列を一括置換 Tweet [Programming] あるディレクトリ以下の、とある文字列を含むファイルのうち、 一部のファイルを除く全てのファイルを対象に、 文字列置換を一括してかけた。sedとgrepを使用した。 忘れそうなのでメモしておく。 % grep -lr とある文字列 * | grep -v '除外するパス' | xargs sed -i 's/とある文字列/置換後の文字列/g' grepの-lオプションでマッチするファイル名だけ出力。 grepの-vオプションで。ファイルリストから除外したい文字を入力。 邪魔なものが沢山あるときは-vオプションで繰り返しフィルタリング。 sedの-iオプションで一括置換する。

    a_bicky
    a_bicky 2012/01/25
    文字列一括置換
  • Exit Codes With Special Meanings

    Table E-1. Reserved Exit Codes Exit Code NumberMeaningExampleComments

    a_bicky
    a_bicky 2012/01/20
    一般的な exit status の意味
  • RubyでANSIカラーシーケンスを学ぼう! - hp12c

    ブログを下記に移転しました。デザイン変更により移転先では記事が一層読みやすくなっていますので、よろしければ移動をお願い致します。 RubyでANSIカラーシーケンスを学ぼう! : melborne.github.com - CUIの世界は地味な世界です 真っ黒なターミナル画面に単一色の文字列 それが却って落ち着くという向きもありますが 今となってはその地味さは際立っています ターミナルで色を使う方法を学ぶことで 新しい世界が開けるかも知れません ようこそANSIカラーの世界へ エスケープシーケンス ターミナルで色を使うためには エスケープシーケンスというものを利用します エスケープシーケンスはターミナル上で色を含む特定の制御を 実現するための特殊な文字列です print "\e[31mhello\e[0m" これによりターミナル上に青文字で「hello」と出力されます この"\e[31m"

    RubyでANSIカラーシーケンスを学ぼう! - hp12c
  • 端末のカラー出力 - /* Grid Thinking */

    C言語場合、printfで色をつけたり、太文字にしたり端末に出力する方法: 1、\x1b コードの使用 基は'\x1b[コードm'だ。 '\x1b[コード;コード;コードm'などとして、複数のコードを指定可能。 例:printf("\x1b[1;31mTEST"); とすると、赤太文字で'TEST'と表示されます。 しかし、その後に端末に表示される文字も赤太文字になってしまうので、 使用後 printf("\x1b[0m");で後始末処理も忘れずに。 2、^[ マジック ^[ (注意:Ctrl+v入力後、ESCキーで入力する。直接キーボードから「 ^[ 」を入力しないでね) 例:printf("^[ [1;31mTEST"); とすると、赤太文字で'TEST'と表示されます。 後始末処理はprintf("^[ [0mTEST");を使用する。 (上記 [ と [ の間にスペースがない)

    端末のカラー出力 - /* Grid Thinking */
  • UNIX コマンドの便利な利用方法 | Shinta's Site

    UNIX の書籍などでよく目にする、 'rn(1)' や 'ctime(3)' の括弧の中に書く数字にはどういう意味があるの? Cプログラム中で関数を使うときのような書き方ですが、これは、"UNIX manual" で、該当するドキュメントがある部分を 示すためにつけられた数字です。実際に 第3章にある "ctime" について の説明を読みたいときは、"man 3 ctime (Solarisでは、man -s 3 ctime)" と、man コマンドを実行することでドキュメントが参照できます。 伝統的なマニュアルは、このようなセクションに分かれています。

    a_bicky
    a_bicky 2012/01/05
    expectというのを使えば対話形式で入力を求められるコマンドも自動化できるとか
  • /bin/bash: bad interpreter: Text file busy Error and Solution

    a_bicky
    a_bicky 2012/01/04
    Text file busy というエラーが出た場合は lsof で確認しろとな。ps aux で確認してたから特定できなかった…
  • プロセス、実行形式、リンク

    2009年12月01日 情報科学類 オペレーティングシステム II 筑波大学 システム情報工学研究科 コンピュータサイエンス専攻, 電子・情報工学系 新城 靖 <yas@is.tsukuba.ac.jp> このページは、次の URL にあります。 http://www.coins.tsukuba.ac.jp/~yas/coins/literacy-2009/2009-12-01 あるいは、次のページから手繰っていくこともできます。 http://www.coins.tsukuba.ac.jp/~yas/ http://www.cs.tsukuba.ac.jp/~yas/ ■今日の大事な話 execve() システム・コール ELF形式 nm コマンド リンク ◆参考書 Claudia Salzberg Rodriguez, Gordon Fischer, and Steven Smolsk

  • Unixのコマンドラインで使えるちょっとした小技をまとめた『Unix Comman-Line Kung Fu』 | IDEA*IDEA

    ドットインストール代表のライフハックブログ

    Unixのコマンドラインで使えるちょっとした小技をまとめた『Unix Comman-Line Kung Fu』 | IDEA*IDEA