동일한 쉘 스크립트에서 자동으로 생성된 폴더에 파일을 복사하는 방법

동일한 쉘 스크립트에서 자동으로 생성된 폴더에 파일을 복사하는 방법

쉘 스크립트를 사용하여 프로젝트의 하위 폴더가 있는 새 폴더를 생성하는 Automator 응용 프로그램을 만들었습니다. 애플리케이션은 먼저 프로젝트 이름과 위치(디렉토리)를 묻고 일단 생성되면 새로 생성된 프로젝트 폴더를 엽니다.

예를 들어:

여기에 이미지 설명을 입력하세요.

지금까지는 예상대로 작동하지만 일부 파일을 하위 폴더에 자동으로 추가하려고 시도했지만 멈춰서 직접 해결책을 찾을 수 없습니다.

기본적으로 다른 폴더의 파일을 새로 생성된 하위 폴더 중 하나로 복사하려고 하는데 (주로) 다음 두 가지 오류가 발생합니다.

  1. "쉘 스크립트 실행" 작업에서 오류가 발생했습니다: "사용법: cp [-R [-H | -L | -P]] [-fi | -P]] -n] [-apvXc] 소스 파일 대상 파일 cp [ - R [-H | -L | -P]] [-fi -P]] -n] [-apvXc] 소스 파일... 대상 디렉터리" 사용법: cp [-R [-H | -L | - P ]] [-fi | -P]] -n] [-apvXc] 소스 파일 대상 파일 cp [-R [-H | -P]] [-fi | apvXc ] 소스 파일... 대상 디렉토리

  2. "셸 스크립트 실행" 작업에서 "cp: /path/to/sourcefile/file.pdf: 해당 파일 또는 디렉터리가 없습니다."라는 오류가 발생했습니다.

    이것이 내가 가진 것입니다:

여기에 이미지 설명을 입력하세요.

mkdir "$1/$2"
mkdir "$1/$2/Guides_and_Bulletins"
mkdir "$1/$2/Pictures"
mkdir "$1/$2/Schematics"
mkdir "$1/$2/Schematics/Calculator"
mkdir "$1/$2/Schematics/As_built"
mkdir "$1/$2/Site_Docs"

cp "/path/to/sourcefile/file.pdf" "/$1/$2/Guides_and_Bulletins/file.pdf"

이 예에서는 위 작업을 통해 특정 위치에서 새로 생성된 Guides_and_Bulletins 하위 폴더로 file.pdf를 복사하려고 시도했지만 당연히 작동하지 않았습니다.

어떤 도움이라도 대단히 감사하겠습니다! 감사해요

참고: 물론 경로를 cp로 변경하고 있습니다."/경로/to/sourcefile/file.pdf""$1/$2/Guides_and_Bulletins/"를 올바른 위치로

답변1

디렉터리를 만들었습니다.

mkdir "$1/$2"

그러나 파일을 다른 디렉터리에 복사하려고 합니다.

cp "/path/to/sourcefile/file.pdf" "/$1/$2/Guides_and_Bulletins/file.pdf"

노력하다:

cp "/path/to/sourcefile/file.pdf" "$1/$2/Guides_and_Bulletins/file.pdf"

또한 스크립트를 일부 단순화할 수 있습니다.

mkdir -p "$1/$2/Guides_and_Bulletins" \
         "$1/$2/Pictures" \
         "$1/$2/Schematics" \
         "$1/$2/Schematics/Calculator" \
         "$1/$2/Schematics/As_built" \
         "$1/$2/Site_Docs"

cp "/path/to/sourcefile/file.pdf" "$1/$2/Guides_and_Bulletins/"

관련 정보