スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
-- : -- : -- | スポンサー広告 | page top↑

プログラムコードの行数を数えるには wc -l

面接などで開発したプログラムコードの行数を聞かれることがありますが、たいてい複数のファイルに分割されているので、全てのプログラムをエディタで開いて行数を見ていくのは大変です。

そんなときには、wcコマンドを使います。
wcはword countという名の通り、単語数を数えるためのプログラムですが、オプションとして -l を指定することで行数を数えることができます。これとワイルドカード (*) を合わせることで複数のファイルを同時にカウントすることができます。
続きを読む
スポンサーサイト

テーマ:プログラミング - ジャンル:コンピュータ - ソーシャルブックマーク: この記事をクリップ! Yahoo!ブックマークに登録

23 : 38 : 01 | プログラミング-UNIX | トラックバック(0) | コメント(0) | page top↑

catコマンドを作ってみた

以前作ったcatプログラムを公開します。
オプションは実装していませんが、引数にファイル名を取る場合と取らない場合には対応しています。

続きを読む

テーマ:プログラミング - ジャンル:コンピュータ - ソーシャルブックマーク: この記事をクリップ! Yahoo!ブックマークに登録

13 : 54 : 33 | プログラミング-UNIX | トラックバック(0) | コメント(0) | page top↑

getcwd()関数でpwdコマンドを作ってみた

一時期、UNIXのコマンドを作ってみようと思っていくつか作ったのですが、pwdコマンドを実装したプログラムを発掘しました。すごく簡単なプログラムですがせっかくなので公開してみます。他にはcatなどを作ったのでそちらも後日公開しようと思います。

続きを読む

テーマ:プログラミング - ジャンル:コンピュータ - ソーシャルブックマーク: この記事をクリップ! Yahoo!ブックマークに登録

23 : 14 : 16 | プログラミング-UNIX | トラックバック(0) | コメント(0) | page top↑

インストール直後のUbuntuはHello, world!のコンパイルができない!

Ubuntuはとても使いやすく、Linux初心者にもお勧めできるディストリビューションです。

しかし、インストール直後の状態(*1)では、C言語の開発用ライブラリがインストールされていないため、Hello, world!すらgccでコンパイルをすることができません。これは、LinuxでC言語による開発を行おうとしてUbuntuを使用した初心者の多くがはまるポイントだと思います。

そこで、UbuntuでC言語の開発用ライブラリlibc6-devと、エディタemacsのインストール方法を記します。

続きを読む

テーマ:UNIX/Linux - ジャンル:コンピュータ - ソーシャルブックマーク: この記事をクリップ! Yahoo!ブックマークに登録

01 : 30 : 02 | プログラミング-UNIX | トラックバック(0) | コメント(0) | page top↑

Cygwinの設定まとめ(bash/ls/emacsの日本語化と色の設定)

Cygwinをインストールし、bash、ls、emacsの日本語化と(emacsの)色の設定をしたのでまとめてみました。
続きを読む

テーマ:UNIX/Linux - ジャンル:コンピュータ - ソーシャルブックマーク: この記事をクリップ! Yahoo!ブックマークに登録

23 : 36 : 48 | プログラミング-UNIX | トラックバック(0) | コメント(2) | page top↑

exec族の関数:プロセスの変身

execl(), execlp(), execle(), execv(), execvp(), execve()は、「exec族」や「execファミリー」と呼ばれ、指定した新しいプロセスで現在のプロセスを置き換えるプロセスイメージを置き換える関数です。平たく言うと、execしたプロセス(プログラム)は新しいプロセスに変身します。

ここでは、execlp()関数を用いたサンプルプログラムを紹介します。

#include <unistd.h>

extern char **environ;

int execlp(const char *file, const char *arg, ...);

このエントリには予備知識編「system関数:新しいプロセスの作成」が存在しますので、先にそちらをご覧いただけたらと思います。

続きを読む

テーマ:プログラミング - ジャンル:コンピュータ - ソーシャルブックマーク: この記事をクリップ! Yahoo!ブックマークに登録

23 : 01 : 13 | プログラミング-UNIX | トラックバック(0) | コメント(0) | page top↑

system関数:新しいプロセスの作成

#include <stdlib.h>

int system(const char *command);

system関数は引数commandに指定されたコマンドを新しいシェルを起動して実行します。
つまり、次のシェルコマンドと同じはたらきをします。

$ sh -c command

Linuxプログラミング―例題で学ぶUNIXプログラミング環境のすべて」を読んでいたらわかりやすいサンプルプログラムが載っていたので、それを参考に記事を書いてみました。

Linuxプログラミング―例題で学ぶUNIXプログラミング環境のすべてニール マシュー リチャード ストーンズ Neil Matthew

ソフトバンククリエイティブ 2004-08
売り上げランキング : 83480
おすすめ平均star


Amazonで詳しく見る
by G-Tools
続きを読む

テーマ:プログラミング - ジャンル:コンピュータ - ソーシャルブックマーク: この記事をクリップ! Yahoo!ブックマークに登録

15 : 18 : 18 | プログラミング-UNIX | トラックバック(0) | コメント(0) | page top↑

UNIXシステムプログラミング-簡易シェルの実装

UNIXシステムコールを使い、簡単なシェルをC言語で実装してみました。現時点では以下の機能しか備えていませんが、今後機能を追加する予定です。

  1. 入力したコマンドを実行
  2. exitコマンドで終了
続きを読む

テーマ:UNIX/Linux - ジャンル:コンピュータ - ソーシャルブックマーク: この記事をクリップ! Yahoo!ブックマークに登録

00 : 40 : 02 | プログラミング-UNIX | トラックバック(0) | コメント(0) | page top↑
| ホーム |

プロフィール

TBVector

Author:TBVector

プロフィール

メールフォーム

記事検索

Google

最近の記事

人気の記事

過去の記事

カテゴリー

タグランキング

リンク

最近のコメント

最近のトラックバック

アクセスカウンタ

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。