sh:for/while:繰り返し処理
Last-modified: 2013-08-24 (土) 02:14:21 (3869d)
Top / sh:for/while:繰り返し処理
sh:for/while:繰り返し処理 †
繰り返し処理のサンプルです。
forのサンプル †
■10回繰り返す
for NUM in `seq 10` do echo $NUM done
■lsでファイルリストを取得してぐるぐる回す
for FILENAME in `ls -1 ./*.txt` do echo $FILENAME done
whileをつかってファイルを1行ずつ読み込む †
よくググって書くのに覚えないので、メモ書き。
前パターン
#!/bin/sh cat “ファイル名” | while read LINE do echo $LINE done
後ろパターン
#!/bin/sh while read LINE do echo $LINE done < “ファイル名”
sshと組み合わせて使用 †
複数台あるサーバのあるディレクトリのファイルについて、更新日が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