[HOME]: [Mac OS X]: [MacPython]: [Emacs]: [生存報告記]: [MacEmacs JP Project]: [NTEmacs JP Project]:

概要

ShellはUnix管理では必須です。

勉強方法

http://www.tsden.org/takamiti/shText/

UNIXコマンドの使い方

上記サイトの文章で勉強は可能です。あとは日常的に利用するようにすれば大概慣れます。

基本構文

bashの構文ですが以下を参照すれば概要がまとまっています。

http://www.linux.or.jp/JM/html/GNU_bash/man1/bash.1.html

システムプログラム(第10週):shスクリプトでよく使われる機能

普通にmanで読んでもよいかと思います。

Tips

簡単な物は以下の文書にまとまっている。

http://www.linux.or.jp/JF/JFdocs/Bash-Prog-Intro-HOWTO.html

Shellにかぎらず掲載されているが以下も読むとよい。

http://www.atmarkit.co.jp/flinux/rensai/linuxtips/tipsindex.html

ソート

sort | uniq ナンテ使ウナヤ

sort -u

ファイル名取得

${parameter##word}
echo "script name is ${0##*/}"

拡張子一括変換

for i in *.jpg; do
  mv $i ${i%.jpg}.jpeg;
done

basenameを利用する手もある。

ファイル名に日付を付加

tar cfz moin`date "+%Y%m%d"`.tar.gz moin

SSH

(cd path && tar cvfj - .) | ssh username@hostname "(cd path && tar xvfj -)"

連番の作成

seq(gun sh-utile)やjotを利用すると簡単。利用できない場合はもありますが、、

i=0; while [ $i -lt 10 ]; do echo $i; n=`expr $i + 1`; done

for i in `seq 0 10`; do echo $i; done

本日から一週間前を計算

env TZ=JST`echo "7*24-9"|bc` date

関連リンク

Zsh

Bourne Shell 自習テキスト

Shell Scriptでルーチン処理!

bash 入門

UNIXの部屋

http://www.netfort.gr.jp/~tomokuni/lms/shell/text/shell3.txt

LinuxCommand.org: Learn the Linux command line. Write shell scripts.

osh: Object-Oriented Shell


CategoryPrograming CategoryMac CategoryUnix CategoryProgramLanguage