「シェルプログラミング」の版間の差分
ナビゲーションに移動
検索に移動
(→基本) |
|||
17行目: | 17行目: | ||
*ツールをどんどん作る | *ツールをどんどん作る | ||
− | + | ==[[シェルプログラミング 基本|基本]]== | |
− | |||
*[[シェルプログラミング 基本]] | *[[シェルプログラミング 基本]] | ||
− | + | ===リダイレクトとパイプ=== | |
* < を使って標準入力を変更する | * < を使って標準入力を変更する | ||
* > を使って標準出力を変更する | * > を使って標準出力を変更する | ||
27行目: | 26行目: | ||
* | を使ってパイプラインを作る | * | を使ってパイプラインを作る | ||
− | + | ===特殊ファイル=== | |
− | + | ====/dev/null==== | |
*ビットバケツ(bit bucket) と呼ばれる | *ビットバケツ(bit bucket) と呼ばれる | ||
*このファイルに送られるデータは全て削除される | *このファイルに送られるデータは全て削除される | ||
*データを読み込むと、常にファイル終端文字が返される | *データを読み込むと、常にファイル終端文字が返される | ||
− | + | ====/dev/tty==== | |
*プログラムが実行された端末にリダイレクトされる | *プログラムが実行された端末にリダイレクトされる | ||
*パスワードなど必ず手入力して欲しい場合などに便利 | *パスワードなど必ず手入力して欲しい場合などに便利 | ||
− | |||
− | |||
==[[シェルプログラミング 変数|変数]]== | ==[[シェルプログラミング 変数|変数]]== |
2020年9月12日 (土) 15:58時点における版
目次
シェルプログラミング
Programming C | Linux | Cygwin |
これらの本からの覚書。
ソフトウェアツールの開発理念
詳解シェルスクリプト イントロダクション
- 一つのことをしっかりやる
- バイナリデータではなく文字列を扱う
- 正規表現を使う
- 特に指定がなければ標準入力と標準出力を使う
- 余計な出力は行わない
- 入力データと同じ形式で処理結果を出力する
- 一つのプログラムで全てをこなそうと思わない
- ツールをどんどん作る
基本
リダイレクトとパイプ
- < を使って標準入力を変更する
- > を使って標準出力を変更する
- >> を使ってファイルに追記する
- | を使ってパイプラインを作る
特殊ファイル
/dev/null
- ビットバケツ(bit bucket) と呼ばれる
- このファイルに送られるデータは全て削除される
- データを読み込むと、常にファイル終端文字が返される
/dev/tty
- プログラムが実行された端末にリダイレクトされる
- パスワードなど必ず手入力して欲しい場合などに便利
変数
条件
制御
リスト
関数
コマンド
Tips
複数ファイルを処理
- ディレクトリのファイルをまとめて解凍
#!/bin/sh for f in `ls *.zip` do unzip $f done
日付
書式
+で書式設定
# date +%Y%m%d%H%M%S 20130817093545
スクリプト中で使う
sufix=`date +%Y%m%d%H%M%S` echo $sufix
© 2006 矢木浩人