저는 Debian 기반의 Kali Linux를 사용하고 있으며 스크립트 위치의 일부 파일을 지정된 디렉터리로 복사하는 스크립트를 작성했습니다. 그러나 스크립트( 라고 함 CopyFiles.sh
)를 실행하면 cp
명령이 root
현재 디렉터리가 아닌 에 적용됩니다. 이것은 내 스크립트입니다.
#!/bin/bash
cp -f * /var/www/
나도 시도해 보았지만 ./*
같은 오류가 발생했지만 디렉터리를 내 스크립트( cd
명령)로 변경하면 제대로 작동합니다. 다음 스크립트를 문제 없이 사용할 수 있지만 추가 명령을 사용하고 싶지 않으며 스크립트가 작동하지 않는 이유를 알고 싶습니다.
#!/bin/bash
SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
cp -f "$SCRIPT_DIR/"* /var/www/
답변1
이 명령은 호출자의 현재 디렉터리(즉, 현재 디렉터리)에 cp -f * /var/www/
일치하는 파일을 복사합니다. *
스크립트가 어디에 있는지는 중요하지 않습니다.