| ページ一覧 | ブログ | twitter |  書式 | 書式(表) |

MyMemoWiki

「シェルプログラミング」の版間の差分

提供: MyMemoWiki
ナビゲーションに移動 検索に移動
27行目: 27行目:
 
* | を使ってパイプラインを作る
 
* | を使ってパイプラインを作る
  
=====特殊ファイル====
+
====特殊ファイル====
 
=====/dev/null=====
 
=====/dev/null=====
 
+
*ビットバケツ(bit bucket) と呼ばれる
 +
*このファイルに送られるデータは全て削除される
 +
*データを読み込むと、常にファイル終端文字が返される
 
=====/dev/tty=====
 
=====/dev/tty=====
 +
*プログラムが実行された端末にリダイレクトされる
 +
*パスワードなど必ず手入力して欲しい場合などに便利
  
 
===[[シェルプログラミング 変数|変数]]===
 
===[[シェルプログラミング 変数|変数]]===

2020年8月23日 (日) 14:43時点における版

シェルプログラミング

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