- 追加された行はこの色です。
- 削除された行はこの色です。
*sh:ファイルを1行ずつ読み込む [#x0ad7f89]
*sh:for/while:繰り返し処理 [#o4e45c63]
繰り返し処理のサンプルです。
***forのサンプル [#q3d5d312]
■10回繰り返す
for NUM in `seq 10`
do
echo $NUM
done
■lsでファイルリストを取得してぐるぐる回す
for FILENAME in `ls -1 ./*.txt`
do
echo $FILENAME
done
***whileをつかってファイルを1行ずつ読み込む [#x0ad7f89]
よくググって書くのに覚えないので、メモ書き。
前パターン
#!/bin/sh
cat “ファイル名” | while read LINE
do
echo $LINE
done
後ろパターン
#!/bin/sh
while read LINE
do
echo $LINE
done < “ファイル名”
***sshと組み合わせて使用 [#z1c49116]
複数台あるサーバのあるディレクトリのファイルについて、更新日が70日以内のファイルを探すスクリプトはこんな感じです。
#!/bin/bash
TARGETLIST=target.txt
while read LINE
do
if [ "A" = "A$LINE" ]
then
continue
fi
echo $LINE
ssh -n $LINE 'find /var/log/ -name "*log" -mtime -70 -ls'
echo ""
done < $TARGETLIST
***リンク [#b947196e]
-[[http://shellscript.sunone.me/while.html]]
-[[http://www.sssg.org/blogs/naoya/archives/1124]]