タグ

programmingとshellに関するhengsuのブックマーク (3)

  • shellの作成

    ★まずはコマンドラインの入力処理を作成しましょう。 ・簡単なアルゴリズム (1)fgets() 関数で文字列を入力待ち状態にします。 (2)文字列が入力されたら、起動コマンド名とその引数に分割します。 (3)起動コマンド名にパスがなければ、環境変数 PATH などを参照してパスを探す。 (4)起動コマンド名が見つからなければエラー表示します。 (5)起動コマンド名が見つかれば、fork()、exec() で実行します。→バックグラウンドで実行させる。 (6)(1)へ戻り入力待ち状態を繰り返す。 上記の方法で簡単なコマンドライン・システムが組めます。 ・リダイレクションは標準入出力を dup() 関数などで切り替えます。つまり、 入力リダイレクションでは標準入力をファイルから読み込むように stdin の属性を変更し、 出力リダイレクションでは標準出力をファイルに書き込むように stdout

    shellの作成
  • 横着プログラミング 第3回: 履歴マニア

    最終更新日: 2002-05-18 (公開日: 2002-05-18) Unix Magazine 誌に 2002年1月号から 2003年2月号にかけて連載し ていた記事の元の原稿です。 コンピュータの方がうまくできることに人間を使うな。 -- Tom Duff *1 私の見る限り、プログラマという人種は決まって事務作業が嫌いな ようである。同じような書類を何枚も書かされたり、1つ誤字があ るから書き直せと言われたりすると、異常にストレスがたまる。 同様に、計算機を使っていても、同じような作業を何度も繰り返し たり、ちょっとでも間違えたら最初からやり直し、というのは耐え られない。そこで、今回は履歴を活用して作業の再利用をするノウ ハウを取り上げる。 シェルの履歴 Unixを使い始めて間もない初心者が作業しているところを見ると、 打ち間違えたコマンドを律儀に最初から打ち直しているのに気づく

  • GNU screen いろいろまとめ。 - naoyaのはてなダイアリー:

    先日人力検索で GNU screen の設定TIPSについて質問してみたところ、かなーり役立つ設定とかをたくさん教えてもらうことができました。みなさん感謝。 そんで、教えていただいた通りにカスタマイズした結果、こんな感じのスクリーンショットが撮れました。MacOSX のターミナルです。 おかげさまでかなり便利になって作業効率が上がったと思います。いろいろ教えてもらったお礼とまではいきませんが、やった設定とかをはまりどころとかも交えて紹介してみます。名付けてリバースNDOメソッド。ちなみに、知ってる人にはごく当然のことが当たり前のように書いてるので、あんまり役に立たないかもしれません。 hardstatus alwayslastline で最終行にウィンドウ一覧を表示 これは今回の質問とは直接関係ないのですが、やるとやらないとでかなり使い勝手が違うので。 hardstatus alwaysl

  • 1