「ファイルをローテーションさせるシェルスクリプト」の版間の差分

提供: Wikiducca
移動: 案内検索
(大松「ブロックされないから荒らしやすいンゴねえ」)
(1版)
 
(他の1人の利用者による、間の1版が非表示)
行1: 行1:
<nowiki>Wikiduccaは終了しました。今後はゴールドペディアをご利用ください。<nowiki>Wikiduccaは終了しました。今後はゴールドペディアをご利用ください。<nowiki>Wikiduccaは終了しました。今後はゴールドペディアをご利用ください。<nowiki>Wikiduccaは終了しました。今後はゴールドペディアをご利用ください。<nowiki>Wikiduccaは終了しました。今後はゴールドペディアをご利用ください。<nowiki>Wikiduccaは終了しました。今後はゴールドペディアをご利用ください。ディレクトリには使えないので注意。
+
ディレクトリには使えないので注意。
  
 
<source lang="bash" line>
 
<source lang="bash" line>

2019年1月17日 (木) 04:14時点における最新版

ディレクトリには使えないので注意。

  1. #!/bin/sh
  2.  
  3. # 最新の TARGET_FILE が TARGET_FILE.1 となり、
  4. # これまで TARGET_FILE.1 だったものは TARGET_FILE.2 にリネームされる。
  5. # i=n で指定した回数を超えたものは削除される。
  6.  
  7. i=5
  8. TARGET_FILE="aaaa.txt"
  9.  
  10. # TARGET_FILE が見つからなければ終了。
  11. if [ -e $TARGET_FILE ]; then
  12.     :
  13. else
  14.     echo "** ERROR ** File does not exist: $TARGET_FILE"
  15.     exit 1
  16. fi
  17.  
  18. #
  19. while [ $i -gt 1 ]
  20. do
  21.   if [ -e $TARGET_FILE.`expr $i - 1` ]; then
  22.     mv $TARGET_FILE.`expr $i - 1` $TARGET_FILE.$i 2>&1 1>/dev/null
  23.   fi
  24.   i=`expr $i - 1`
  25. done
  26.  
  27. #
  28. if [ -e $TARGET_FILE ]; then
  29.   mv $TARGET_FILE $TARGET_FILE.1 2>&1 1>/dev/null
  30. fi
  31.  
  32. # EOF