Advertisement
Guest User

Untitled

a guest
Dec 7th, 2016
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.71 KB | None | 0 0
  1. $ cat bkdir.sh
  2. #!/bin/sh
  3. for DIR; do # ← 全引数に対してループ
  4. DIR="${DIR%/}" # ← 末尾の / を除去する
  5. if test -e "$DIR"; then
  6. i=1
  7. while test -e "$DIR.bk$i"; do
  8. i=$((i+1))
  9. done
  10. mv "$DIR" "$DIR.bk$i"
  11. fi
  12. mkdir -p "$DIR"
  13. done
  14.  
  15. $ ./bkdir.sh /tmp/dirs/test1 /tmp/dirs/test2/
  16. $ ./bkdir.sh /tmp/dirs/test1 /tmp/dirs/test2/
  17. $ ./bkdir.sh /tmp/dirs/test1 /tmp/dirs/test2/
  18. $ ./bkdir.sh /tmp/dirs/test1 /tmp/dirs/test2/
  19. $ ./bkdir.sh /tmp/dirs/test1 /tmp/dirs/test2/
  20. $ ls -1F /tmp/dirs
  21. test1/
  22. test1.bk1/
  23. test1.bk2/
  24. test1.bk3/
  25. test1.bk4/
  26. test2/
  27. test2.bk1/
  28. test2.bk2/
  29. test2.bk3/
  30. test2.bk4/
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement