タグ

unixとLinuxに関するkenjiro_nのブックマーク (29)

  • UNIXを教える仕事をした - はてなの鴨澤

    知り合いに頼まれて、ちょっとUNIXの初歩を教える授業をした。 ちょっとといっても結構がっつりで、入ってきたばかりの、だいたいは家にパソコンがないという素人の学生に、2ヶ月間・23日・2コマずつで基を教え、ちょっとしたツールをシェルスクリプトで作れるような、いわば普通のUNIX使いにしてくれ、という要望である。 一応の教科書は指定されたのだが、自分で買って読んでみたところ、あまり良くなかったので使わなかった。「これはリファレンスに使ってください」ということにした。 代わりに使ったのは、自分が真に優れていると思う、Kernighan & Pikeの『UNIXプログラミング環境』である。1984年初版、対象はVersion7 UNIXと非常に古いので、内容は全部作り直しだ。全9章あるが、Cでツールを作り出す6章以降はいらないし(9章なんてtroffの詳細だぜ)、5章で作るツールはかなり古臭

    UNIXを教える仕事をした - はてなの鴨澤
  • manがあるコマンドは偉いし、manを付けるべき - Lambdaカクテル

    社内で、crontabのtabは実はtableだからクーロンタブじゃなくてクーロンテーブルなんだよね、という話が盛り上がった。 ファクトチェックとして、crontab(5)が紹介されていた(cron tableという言葉が出現している)。 manで事実確認がすぐできてすごいと思う一方、それを可能たらしめているmanもありがたいと思った。 man(1) とかの数字って何? 意外なものにmanがある 最近のコマンドにman pageが無い件 manまわりのコマンドの紹介 man(1) とかの数字って何? ちなみに、manのマニュアルやコマンド自体をアドレスするときに使うman(1)といった記法のカッコ内の数字は、manのセクション番号である。 コマンドと設定ファイルが同名であることがしばしばあるため、カッコ内にセクション番号を書くことで識別できるようにしている(例えば、crontab(1)はそ

    manがあるコマンドは偉いし、manを付けるべき - Lambdaカクテル
  • 【Ubuntu日和】 【第12回】ショートカットとByobuを駆使して、UbuntuのCLI操作を効率化しよう

    【Ubuntu日和】 【第12回】ショートカットとByobuを駆使して、UbuntuのCLI操作を効率化しよう
  • とらりもん - Unix/Linux入門

  • Oracleで`$HOME/oradiag_<username>`ディレクトリが作られないようにする方法 - Qiita

    Oracle 11gから導入されたADRにより、sqlplusを実行すると$HOME/oradiag_<username>/というディレクトリが勝手に作られるようになりますが、ウザいので作られないようにするための方法を調査しました。

    Oracleで`$HOME/oradiag_<username>`ディレクトリが作られないようにする方法 - Qiita
  • はじめてのにき(2020-06-30)

    _ UNIX 哲学 の、直交性のあるツールをたくさん作って、組み合わせて使いましょうてやつ、その哲学そのものは僕も好きだし、学ぶことの多い教えだとは思っている。なんだけど、自分の仕事に適用しようとしない方が良いと思ってるんだよな。というか、仕事で UNIX 哲学的にバラバラなツール群としてデザインされたものを見ると、げんなりするレベルなので、嫌いといっていいレベルかもしれない なんでかっていうと、それが真に UNIX の10%程度にでもうまくいっているという例をほとんど見たことがないから、という気もする。 djb が例外くらいの気持ち バラバラのツールでまとまった機能を実現させるのであれば、そのバラバラのツールが何を、どういうふうにやりとりするか、というのを統一しないといけない。 UNIX であれば行指向のテキストファイルをパイプでやりとりする、みたいな また、どうすれば使いかたがわかるか

  • Linux (Unix) の su コマンドの su は何の略か - 元RX-7乗りの適当な日々

    "man 1 su" すると頭には以下の記載がある。 NAME su - change user ID or become superuserまだ学生の頃、師匠に初めて su コマンドの存在を教わった時から、私は "Super User" ではなく "Switch User" であるという認識だったが、お恥ずかしながらどうやったら違ったらしい。 The Unix command su, which stands for substitute user is used by a computer user to execute commands with the privileges of another user account. su (Unix) - Wikipedia "Substitute User" なのですね。 代用するとか取り替えるの意だと思うので、確かにしっくりきますね。な

    Linux (Unix) の su コマンドの su は何の略か - 元RX-7乗りの適当な日々
    kenjiro_n
    kenjiro_n 2019/03/27
    substitute userの略だったってマジか。
  • CSVの処理で使えそうなコマンドラインツール(column, textql, csvkit, xsv, visidata, csvtotable, daff, tabview) - もた日記

    column textql csvkit xsv visidata csvtotable daff tabview CSV(またはTSV)を処理するときにはcut, sort, awk, paste, joinといったコマンドを使うことが多いが、CSVの処理で使えそうなコマンドラインツールを簡単に試してみる。 テスト用のCSVデータは下記ページで作成した。 Mockaroo - Random Data Generator and API Mocking Tool | JSON / CSV / SQL / Excel column以外はGitHubのスター順で紹介している。 column stackoverflow.com columnはLinuxコマンドだが検索で結構ひっかかったので紹介。 以下のように見やすいように揃えて出力してくれる。 $ head -n5 test.csv id,fi

    CSVの処理で使えそうなコマンドラインツール(column, textql, csvkit, xsv, visidata, csvtotable, daff, tabview) - もた日記
  • #/usr/binとその同種の周辺を探る | POSTD

    (注:2017/04/10、いただいたフィードバックを元に翻訳を修正いたしました。) はじめに 私はLinuxが大好きです。コンピュータとのやりとりが楽しくなるし学ぶことも多くなります。OSとハードウェアの基盤となる基原則を学びたい人にとって、Linuxはとてもいい出発点と言えるでしょう。 ご存じのとおりLinuxとは大抵の場合プログラム(コマンド)を通してやりとりします。Linuxと他のUNIX系システムが持っている特徴は、コマンドラインと、パイプのコンセプトです。プログラムの提供する入力と出力を統合すれば、データを操作するのに非常にパワフルなプラットフォームになります。 Linuxのコマンド、プログラム、バイナリ(何と呼んでもいいのですが)の大部分は、/usr/bin、/usr/sbin/、/binそして/usr/local/binに存在しています。これらのディレクトリを見れば、プロ

    #/usr/binとその同種の周辺を探る | POSTD
  • みんなのやらかしたLinuxコマンド操作での自爆あれこれ

    利奈みんとbot🎉累計4万部突破!!🎉 @sysadgirl_mint 強制終了させたいプログラムの名前(コマンド名)が分かってるときは、killallコマンドが便利ですよ!😎✨いちいちプロセスIDを調べなくても、「killall bash」みたいにやるだけd 2016-10-16 08:57:44 利奈みんとbot🎉累計4万部突破!!🎉 @sysadgirl_mint サーバーの上で暴走したシェルスクリプトをkillallコマンドで強制終了させるときは、シェルスクリプトのファイル名を指定するんですよ!😫 うっかり「killall bash」ってやっちゃうと、sshでログインしてるシェルまで終了されちゃいますからね!💦 2016-11-16 14:57:07

    みんなのやらかしたLinuxコマンド操作での自爆あれこれ
  • サーバをメンテする時に便利な Linux コマンド 3つ - bekkou68 の日記

    はじめに サーバを運用したり環境を構築したりしていて「あれ。あのプロセスで吐いてるログどこだっけ・・」など困るときがあります。 そんなときに頼りになるかもしれないコマンドを 3つご紹介します。 @madeth 師匠に教えていただきました。 1. proc でプロセスが使っているファイルを見る 困ったこと プロセスの吐くログのパスがどうしても分からない・・。 解決法 (編集 2014/09/10) 知りたいプロセスの ID を調べます。 $ ps aux | grep unicorn deploy 3335 xxx xxx xxx xxx X XX 15:14 0:07 unicorn master -c /var/www/myproject/unicorn/staging.rb -E staging -D プロセスID (この場合は 3335) をもとに root 権限でファイルディスクリ

    サーバをメンテする時に便利な Linux コマンド 3つ - bekkou68 の日記
  • system()関数と、マルチスレッドと、シグナルハンドラ : centosとかfedoraとか組み込みLinuxとかの色々備忘録

    2010年06月25日11:24 カテゴリ system()関数と、マルチスレッドと、シグナルハンドラ まぁ、わかってるひとには、タイトル見ただけで、私が間抜けなプログラマだと宣伝してるだけなのかもなのですが、今週調べたことを備忘録代わりに。 マルチスレッドプログラムで、あるスレッドから、system()関数を使いました。 status = system("pwd"); みたいなコードです。 ところが、statusが、-1になったり、正常にsystem()関数で実行したコマンドの戻り値が取れたり、と、挙動が変わります。 で、このプログラム、すでにSIG_CHLDのシグナルハンドラが登録されていました。中身は、fork-execして終了した子をゾンビ化させないためのwaitpid()だけの簡単なものです。 system()関数が、-1で終了する時には、シグナルハンドラの方でsystem()関

    system()関数と、マルチスレッドと、シグナルハンドラ : centosとかfedoraとか組み込みLinuxとかの色々備忘録
  • ITインフラで起きる「もしも」のための12個のコマンド

    こんにちは。斎藤です。 ITインフラの障害は、多くの場合「予期せぬ」タイミングで発生します。特に、CPUリソースを多量に消費したり、Disk I/Oが輻輳している場合、その切り分けは困難な状況に陥りやすいものです。 そこで、日はITインフラ、特にOS・ミドルウェアを支えるにあたって、問題解決を助けてくれるであろう12個のコマンドを取り上げてみます。「必ず押さえておきたい」5つのものと「更に覚えると便利なコマンド」7つの2節に分けてお話しします。 ※CentOS 6.4 (64bit)を前提に取り上げます 必ず押さえておきたいコマンド もしITインフラ管理者になりたてな方はぜひ サーバサイドのプログラマをやっていたのだけれど、ある日突然「君、サーバ管理担当ね!」と、バトンを渡される方っていらっしゃると思います。私も以前はそのクチでした...。そうなってしまったとき、まずは覚えておきたい5つ

    ITインフラで起きる「もしも」のための12個のコマンド
  • UNIX & Linux コマンド・シェルスクリプト リファレンス

    目次 当サイトについて bash シェルスクリプト入門 -シェルスクリプトのいろは- コマンド Tips シェルスクリプト Tips 変数を使用する 配列を使用する 入力と出力 if 文と test コマンド for 文の使用方法 while 文の使用方法 case 文の使用方法 関数の使用方法 引数を処理する 終了ステータス シグナルと trap コマンド フィルタを使用した文字列操作 1 フィルタを使用した文字列操作 2 日付を取得する 文字コードと改行コード シェルスクリプトのデバッグ AWK リファレンス (Deprecated) シェルスクリプト ライブラリ 『ether.sh』 お知らせ Bluesky を始めました @sunone.me 変更履歴 2023.10.07 ページ内リンクを修正した。 2021.02.01 このサイトに「もう 1 ページ追加しよう」と思ってから、も

    UNIX & Linux コマンド・シェルスクリプト リファレンス
  • プロセス・パイプ・リダイレクション・ファイルディスクリプタの実体を見に行く - ザリガニが見ていた...。

    プロセス置き換えとか、名前付きパイプとか、とても便利な機能なのだけど、その仕組みはどうなっているのだろう?断片的な知識ばかりでは、その核心にはなかなか辿り着けない。サンプルコードの真似はできるけど、それ以上の発想はできない...。もっと根的なところからちゃんと理解しておかないと、いつまでたってもコマンドの使い方の質が理解できないと感じた。プロセスとは何か?パイプとは何か?リダイレクションとは何か?ファイルディスクリプタとは何か?可能な限りその質を探ってみようと思う。 UNIXのプロセス UNIXでは、複数のユーザーがログインした状態で、同時に複数の処理を依頼される状況が多々ある。 ところが、どんなに高性能なCPUであっても、ある瞬間に処理できるのはたった1つの処理だけである。 そんな時OSは、それぞれの処理に必要なメモリ領域を割り当てて、CPUをタイミングよく切り替えながら同時並行的

    プロセス・パイプ・リダイレクション・ファイルディスクリプタの実体を見に行く - ザリガニが見ていた...。
  • 現場で役に立たないsudoの使い方

    PostgreSQLでpg_bigmを使って日語全文検索 (MySQLとPostgreSQLの日語全文検索勉強会 発表資料)NTT DATA OSS Professional Services

    現場で役に立たないsudoの使い方
  • デーモンの起動・終了にはserviceコマンドを利用しよう

    斎藤です。こんにちは。 今日は、デーモンの起動・終了に際してはserviceコマンドを使った方がいいよ、というお話です。 ※CentOS 6.4 (x86_64) でテストしています。尚、特記がある所を除きます。 デーモンの起動・終了には大きく2手 Linux、特にRedHat, CentOS, Fedora, Ubuntu[1]などでは、デーモンの起動・終了の制御の際に、大きく分けて次の2つの方法を用いる事ができます。 "/etc/init.d/"配下のスクリプト(以下、スクリプト)を直接実行する "service"コマンドを実行する 一見、同じ事をやっているように思えるのですが、実は違う部分があります。それは、起動スクリプトが扱う環境変数が違うのです。次の節で、検証してみます。 扱う環境変数が違う スクリプトを直接実行する場合は、実行時の際の環境変数をそのまま利用します。一方、serv

    kenjiro_n
    kenjiro_n 2013/06/26
    /etc/init.d/ほげほげ を直接打つのは良くないという話。そうだったのかー。
  • chef-solo はじめてのLinux環境構築の自動化入門 | Act as Professional

    環境構築を自動化すれば数分でサーバ構築して投入できますよ?@HIROCASTERでございませう。 vagrantで開発環境(仮想マシン)を自動構築しようの記事で、仮想マシンにchefやpuppetを自動的に実行させて開発環境を自動で構築する手順を紹介しました。 環境構築を自動化する内容をchefであれば、レシピと呼ばれるものを、puppetであればマニフェストと呼ばれるものを記述しなければなりません。 今回はパッケージ(NTP)を導入して、NTPの設定ファイルを自動的に配備して、サービスを立ち上げるという環境構築の自動化をchef-soloを使って、紹介したいと思います。基的に他のソフトになっても手順は同じです。参考にしてください。 chefとchef-soloの違いchefはクライアントとサーバの形を取っており、chefを実行するためにはサーバにレシピや付随する数多くのデータがなければ

    chef-solo はじめてのLinux環境構築の自動化入門 | Act as Professional
  • JM Project (Japanese)

    JM プロジェクトは、主に Linux 関連のマニュアルページの日語ページを翻訳・公開しています。 全文検索 新着情報 GNU gzip 1.12 の翻訳を更新しました。 詳細はこちら。 (2022/6/24) qpdf 10.6.3 の翻訳を追加しました。 (2022/6/14) upower 0.99.17 の翻訳を追加しました。 (2022/6/13) GNU grub 2.06 の翻訳を追加/更新しました。 詳細はこちら。 (2022/6/12) GNU gdb 11.2 の翻訳を追加/更新しました。 (2022/6/11) kmod 29 の翻訳を追加しました。 詳細はこちら。 (2022/6/7) GNU gsl 2.7.1 の翻訳を追加しました。 (2022/6/6) dblatex 0.3.12 の dblatex.1 の翻訳を追加しました。 (2022/6/5) GNU

    kenjiro_n
    kenjiro_n 2012/06/18
    いつの間にかsourceforgeに移転してたのか。
  • MAX_PATHに関する考察とか

    MAX_PATHに関する考察とか なんとなく悩まされたので悩んだ過程と私なりの結論とかを書いてみます。 考察なんで嘘書いてます。(言いきってどうする)。 嘘発見情報や追加情報などありましたらぜひご連絡ください。 広い考察をしたいくせに確認できるプラットホームがあまりに少ないのが 問題です。補完できるときに補完したい... ここで「問題」としているもののは、そもそもそういうふうに使われることを 意図して作られていないものを無理に使っているから、と言えるような 気もしますが... MAX_PATHとは まずはMSDN Libraryの解説をごらんください。 この定数はstdlib.hにあると書いてあります。 確かに、 Mingw32 (msvcrt-2000.03.27) Visual C++ 6.0 にはありますが、少なくとも FreeBSD (4.3-RELEASE) NetBSD (1.