FC2ブログ

便利なシェルスクリプト

コマンドを打ち込むときに、タイプミスをしたり
打ち込むのが面倒ということが多々あります

そんなときに役立つのがシェルスクリプトです

たとえば、testfile をtestfile2 というファイルにコピーするときには
通常
cp -p testfile testfile2
というようにします

しかし、毎回コピーするときに打ち込むのは面倒なので
ファイル名に2をつけてバックアップするには

vi backup2
でファイルを作成し
内容を
cp -p ${1} ${!}2
として保存

chmod +x backup2
で実行権限を与えて

./backup2 testfile
と実行すれば
testfile2
が作成されます

今回のわかりにくい点は
${!}
という記号です

これは、シェルスクリプトで使う記号で
意味は 引数1
を意味しています

もう少し載せると
$0 がコマンド名

$1 が引数1

$2 が引数2

$3 が引数3

となっていきます

コマンドと引数の関係を cp コマンドで例えると
cp -p testfile testfile2
の場合なら
cp  が $0
tetfile が $1
testfile2 が$2

というかんじです

オプションは引数には入らないはずです

これを活用するとかなり楽になります

ちなみに、今回

vi backup2 の内容で
cp -p ${1} ${!}2

となっていますが
コピーしたファイルの名前をbackupというようにつけたいのなら
cp -p ${1} ${!}backup

というように変更することでできます

このように、引数などを使うと
tr コマンド
で行った作業の
tr -d '\r' < testfile > testfileTmp
mv testfileTmp testfile
についても

vi ModeLF
でファイルを作成し
中身を
#!/bin/bash
tr -d '\r' < ${1} > ${1}Tmp
mv ${1}Tmp ${1}
で保存して

chmod +x ModeLF

とすることで同様の作業ができるようになります

引数を使う最大のメリットは
ファイル名を記述すると、そのファイルにしか適用できないのに対し
引数を指定した場合なら、他のファイル名でも使用できるのが
最大のメリットとも言えます

スポンサーサイト



テーマ : Linux
ジャンル : コンピュータ

コメント

非公開コメント

最新記事
検索フォーム
GREEハコニワ攻略サイト
リンク
カテゴリ
月別アーカイブ
フリーエリア
最新記事
FXプライムレート
最新コメント
最新トラックバック