파일을 이동하는 배쉬 스크립트


11

나는 초보자이며 도움이 필요합니다.

다른 디렉토리의 한 디렉토리에서 일부 파일을 이동시키는 스크립트를 만들려고합니다. 스크립트를 작성하기 전에 명령을 테스트했으며 작동했습니다.

mv /path/to/source  /path/to/destination

내가 스크립트를 만든 후에 nano:

#!bin/bash/
echo "mv /path/to/source  /path/to/destination"

스크립트를 실행 파일로 만든 chmod +x file 다음 다음과 같이 실행 ./file했지만 다음 오류가 나타납니다.

bash: ./move.sh: /bin/bash/: bad interpreter: Not a directory

나는 sudo ./filebash 파일을 사용해 보았지만 작동하지 않습니다.

VirtualBox와 함께 설치된 Ubuntu를 사용하고 있습니다.


답변:


20

당신이 사용 #!bin/bash/하고 있기 때문에 이것이 잘못되었습니다. 올바른 방법은 다음과 같습니다.

#!/bin/bash

이것을 shebang 이라고하며 , 실행될 때 스크립트를 해석 할 프로그램을 쉘에 알려줍니다.

또 다른 것은 우분투에서 bash 인터프리터의 절대 경로는 그렇지 /bin/bash않은 bin/bash/것입니다. which bash명령을 사용하여이를 확인할 수 있습니다 .

그리고 또 다른 것이지만 아마 당신은 이것을 알고 있습니다 : 다음 줄 :

echo "mv /path/to/source /path/to/destination"

와 함께 문자 메시지 만 표시됩니다 mv /path/to/source /path/to/destination. 실제로 파일을 이동하려면 다음 스크립트를 사용하십시오.

#!/bin/bash
mv /path/to/source /path/to/destination

이것이 스크립트의 모습입니다.


1
참고로 우분투는 역사적으로 매우 유용한 which명령 의 엉터리 버전을 패키지했습니다 . gnu 를 얻는 수동 설치의 가치가 있습니다 .
djeikyb
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.