|
unix
- このページは
- textutils
- マニュアル
- words ファイル
- 特別なファイル
- kernel
- リダイレクト
- 設定
- 言語
- bashrc
- 環境変数
- windows 上のエミュレータ
- 参考文献・参考ウェブページ
- 履歴
unix についての自分用メモ, tips。
ここではPC-UNIX, Linux もunix としている。
シェルのページも統合した。
shell はlinux などのターミナル上でシステムを制御するソフトウェア。
シェルスクリプトについては別ページに記載している。
GNU が配布しているテキスト処理パッケージ。
textutils というコマンドがあるわけではない。
コマンド群の組み合わせで強力なテキスト処理が可能になる。
パイプ・ストリームなどの機能がある。
以下コマンドを含む。
cat, cksum, comm, csplit, cut, expand, fmt, fold, head, join, md5sum, nl, od, paste, pr,
sort, split, sum, tac, tail, tr, unexpand, uniq, and wc
参考文献・参考Webpage
unix はマニュアルを内蔵している。
調べるときには以下のコマンドを使えばよい。
$ man SEARCH_WORD
tips
-
- ファイルの形式はセクション5 に記録されている。
参照時には以下のようなコマンドを使用する。
システムによってはセクション7の時もある。
$ man 5 passwd
man の検索
文字列「copy」を含む man マニュアルを検索する
$ man -k copy
$ apropos copy
以下の場所にwords(単語)ファイルがあり、単語が登録されている。
/usr/dict/words
/usr/share/dict/words
/usr/share/lib/dict/words
...
その他"word list" などで検索すると単語ファイルが見つかる。
なお、任意のテキストファイルも以下のコマンドを用いることにより、
words ファイルと同じ形式に変換できる。
$ cat file(s) | tr A-Z a-z | tr -c a-z\' '\n' | sort -u
この単語ファイルをつかってクロスワードパズルのヒントを作成する
プログラムを作成することが可能。
#! /bin/sh
# search-words.sh
# compute egrep matching within word-list-file.
# usage
# search-words.sh
FILES="
/usr/dict/words
/usr/share/dict/words
/usr/share/lib/dict/words
/usr/share/lib/dict/words.*
"
pattern="$1"
# -h : hidden, -i : ignore (big and little letter)
egrep -h -i "$pattern" $FILES 2> /dev/null | sort -u -f
使い方の例としては、b で始まり、7文字目にx z が入る10文字の単語を
以下の様に調べることができる。
$ search-words.sh '^b......[xz]...$' | fmt
また、母音以外の文字が6文字以上続く単語を調べるには以下の様に調べる。
$ search-words.sh '[^aeiouy]{6}' /usr/dict/words
短縮系がマッチしないようにするためには以下のコマンドを追加すればよい。
egrep -i '^[a-z]+$'
- /dev/null
このファイルに送られるデータは消去される。
- /dev/tty
必ず端末にリダイレクトされる
printf "input new password."
stty -echo (do not display)
read pass < /dev/tty
printf "retype new password."
read pass2 < /dev/tty
stty echo (display)
kernel はunix エンジンの核。
プログラムには
データの入力元(標準入力)、処理結果の出力先(標準出力)、エラーの報告先(標準エラー出力)がある
という観点からリダイレクトの仕様が決まった。
redirect の主な方法は以下
- 標準出力のリダイレクト
$ command > OUTPUT_FILE
- エラー出力のリダイレクト
$ command 2> OUTPUT_FILE
- 標準出力とエラー出力のリダイレクト
$ command &> OUTPUT_FILE
- 標準入力のリダイレクト
$ command < INPUT_FILE
- 標準出力の追記のリダイレクト
$ command >> OUTPUT_FILE
- i18n
internationalization はi のあとに18文字あってn がきているからi18n としている。
国際化。
/etc/i18n
- l10n
localization はl のあとに10文字あってn がきているからl10n としている。
bashrc ファイルの書き方
- 環境変数の表示
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
command | 意味・動作 |
set -o vi |
コマンドラインの操作をvi ライクに。
デフォルトはEmacs になっている。 |
set -o viraw |
コマンドラインの操作をvi ライクに。
より高機能だが、cygwin には存在しない。 |
set -o emacs |
コマンドラインの操作をemacs ライクに。
|
- $shell
シェル
- $PATH
パス
$ export PATH=$PATH:DIRECTORY_NAME
とすること。そうでないと今までの設定が上書きされてしまう。
- export
環境変数を指定する。
シェルによる移植性を確保するために、以下のような書き方が望ましい。
VALNAME=VALUE
export VALNAME
export VALNAME=VALUE ともかけるが、上記の方が
bash 以外のshell に対しても互換性が高い。
また、現在の環境を表示するためには以下のコマンドが使える。
$ export -p
- alias
$ alias
で現在のalias の設定を確認できる。
設定の方法は
$ alias ALIAS_NAME="COMMAND [OPTIONS]"
解除設定の方法は
$ unalias ALIAS_NAME
- unset
export した関数・変数が消去される。
- readonly
変数の値を変更できなくする。
シェルによる移植性を確保するために、以下のような書き方が望ましい。
BAR=anothervalue
export BAR
環境変数
環境変数 | 意味 |
$LINES |
現在のWINDOWS の幅。 |
$COLUMNS |
現在のWINDOWS の高さ。 |
|
|
- cygwin
cygwin.dll がシステムコールを再現
- DJGPP
- MKS Toolkit
o'reilly 好評価
- AT&T UWIN
posix.dll がシステムコールを再現
-
詳解 シェルスクリプト
-
入門bash
UNIXの基本操作(初心者向け解説)
-
debian install manual
よくできたマニュアル。
-
jman
-
www.linux.org/
-
Linux magazine
-
Linux World online etcナビゲーション
/etc ディレクトリのファイルの説明。
-
Unix Programming Frequently Asked Questions 日本語訳
-
Programming UNIX Sockets in C - Frequently Asked Questions 日本語訳
-
Linux Personal Workstation(Linux パーソナルワークステーション)
- 2006/09/05 新規作成・分岐版・シェルのページとマージ
|
|