저장 파일을 자동으로 백업하는 bash 스크립트를 작성하려고 했습니다.
꽤 멀리 왔는데 마지막 부분이 헷갈립니다. 내 명령:
cp -v -r "$dir_loc/$name_pattern.*" "$backup_loc"
게임이 저장된 파일을 복사하고 싶습니다. 그러니 SAVEGAME.0/1/2
잠깐만요, 당신이 할 수 있다는 걸 알아요SAVEGAME.*
그러나 bash 스크립트에서 이것을 시도하면 그러한 파일이나 디렉토리가 존재하지 않는다고 말합니다.
도움이 필요하세요?
편집: 알아냈어요. @pfnuesel 감사합니다
.*
따옴표 안에 포함하면 안 됩니다 .
cp -v -r "$dir_loc/$name_pattern".* "$backup_loc"
답변1
확장되지 않도록 *를 따옴표로 묶습니다. 즉, 이름이 인 이름을 찾습니다 SAVEGAME.*
.
답변2
귀하의 아이디어는 기본적으로 타당하므로 또 다른 문제, 오타 등이 있을 수 있습니다. 이것은 당신이 모든 일을 할 때 분명해집니다 echo
. 예를 들어:
echo "dir_loc=$dirloc"
echo "name_pattern=$name_pattern"
if [ ! -d backup_loc ] ; then
echo "backup_loc does not exist"
fi
cp -v -r "$dir_loc/$name_pattern.*" "backup_loc"
backup_loc
(이 경우에는 이어야 한다고 생각 $backup_loc
하지만 이는 순전히 내 추측입니다)