Unix에서의 복구 기능

Unix에서의 복구 기능

파일을 원래 위치로 복원하는 스크립트가 있습니다. "이 파일을 복원하시겠습니까?"라는 스크립트 옵션이 없습니다. 이것을 아래 코드에 어떻게 구현합니까? 감사합니다!

#!/bin/bash
if [[ ! $1 ]]; then
echo -e "Usage:\n\n\t$0 'file name'"
exit 1
fi

f=$(ls 2>/dev/null -l /proc/*/fd/* | fgrep "$1 (deleted" | awk '{print $9}')

if [[ $f ]]; then
   echo "fd $f file found..."
cp -v "$f" "$1"
   else
echo >&2 "No file"
exit 2
fi
 }

답변1

확인을 요청하는 데 사용됩니다 read. 예:

echo "fd $f file found..."
read -p "Press enter to continue or Ctrl+c to cancel"
cp -v "$f" "$1"

또는

echo "fd $f file found..."
read -p "Do you want to recover this file? [Yes/No] " confirmation
[[ $confirmation =~ ^[YyJj] ]] || { echo "Canceled"; exit }
cp -v "$f" "$1"

관련 정보