문제 내용은 문제 ·/var/log/messages 와 같은 백업 시스템을 만들고 싶다. 파일(File명)의 백업을 구하는 쉘스크립트를 작성해 주세요. (단, 이하의 기능을 갖도록 작성한다.) 1. 백업 파일(File.1, File.2, File.3, File.4)이 있는지 조사,   ■없다 ... File.1의 이름으로 작성한다.   ■있다 ... File.1⇒ File.2, File.2⇒ File.3, File.3⇒ File.4이고, 백업을 한 뒤 새로 백업 파일(File.1)을 작성한다.  ■새로운 백업을 작성한다. … File.4를 삭제하고, File.3⇒ File.4,   File.2⇒ File.3, File.1⇒ File2로 백업을 하고 새로 백업 파일(File.1)을 작성한다. ``` #!/bin/bash file='File' if [[ -e ${file}.4 ]]; then mv ${file}.4 ${file}.5; fi if [[ -e ${file}.3 ]]; then mv ${file}.3 ${file}.4; fi if [[ -e ${file}.2 ]]; then mv ${file}.2 ${file}.3; fi if [[ -e ${file}.1 ]]; then mv ${file}.1 ${file}.2; fi if [[ -e ${file}.5 ]]; then mv ${file}.5 ${file}.1; fi ```   ■있다 ... File.1⇒ File.2, File.2⇒ File.3, File.3⇒ File.4이고, 백업을 한 뒤 새로 백업 파일(File.1)을 작성한다. 현재 이부분만 한 상태입니다. 질문 내용인 위에부분인 1. 백업 파일(File.1, File.2, File.3, File.4)이 있는지 조사,   ■없다 ... File.1의 이름으로 작성한다.  ■새로운 백업을 작성한다. … File.4를 삭제하고, File.3⇒ File.4,   File.2⇒ File.3, File.1⇒ File2로 백업을 하고 새로 백업 파일(File.1)을 작성한다. 이부분은 손도 못대고 있네요 이런 질문만 드려서 죄송할 따름입니다ㅠㅠ
## 역질문 1. 백업 스크립트는 어떤 이벤트를 통해 동작하나요? 2. 가장 최근 4개의 버전까지만 관리하면 되는 걸까요? 3. 구현한 부분이 무엇이고, 미 구현부분이 무엇인가요? ## 제가 이해한 내용 ``` if (백업파일이 있는가?) { // 파일 버전 시프트 버전 1 -> 2, 2 -> 3, 3 -> 4 } // 새로운 파일 생성 버전 1 := 새로운 파일 ```
결국 완성했습니다 ㅠㅠ ``` #!/bin/bash file='File' echo -n "파일명을 입력해주세요 :" read a echo -n "$a 을File.1에 백업하시겠습니까?(Y/N):" read b if [[ $b == "y" ]] || [[ $b == "Y" ]] || [[ $b == "yes" ]] || [[ $b == "Yes" ]]; then echo "백업을 완료했습니다" if [[ -e ${file}.3 ]]; then mv ${file}.3 ${file}.4; fi if [[ -e ${file}.2 ]]; then mv ${file}.2 ${file}.3; fi if [[ -e ${file}.1 ]]; then mv ${file}.1 ${file}.2; fi cp $a ${file}.1 if [[ -e ${file} ]]; then mv ${file} ${file}.1; fi else echo "백업을 실패했습니다"; fi ```
멋져용~! 굳잡~~
감사합니다ㅠ 혹시 제가 저번에 부탁드린 포커 만드는 프로그래밍 해보셨나요?? 어떻게 시작해야할지 감도 안잡혀서ㅠ
아직 보지를 못했네요. 이번주 중으로 짬날 때 한 번 확인해볼게요. 기한이 언제까지인가요?
담주 금요일까지입니다 바쁘신 와중에 너무 죄송스럽네요ㅠ