실패한 메모리를 아주 작은 쉘 스크립트로 바꾸고 싶습니다.이 스크립트는 현재 디렉토리에서 작동하지만 경로에 배치되면 실패합니다.
#!/bin/sh
if ! [ –a $1.sav ]; then
mv $1 $1.sav
cp $1.sav $1
fi
nano $1
은 원본 버전의 스크립트를 저장하기위한 것입니다. 이전에 원본이 보존 되었다면 이동 및 복사 백을 건너 뜁니다 (원래의 타임 스탬프를 보존하기 위해 이동 및 복사 백을 사용합니다).
chmod과 함께 실행 파일을 만들면 내가 편집중인 디렉토리에서 실행할 수 있습니다.
*-bash: /usr/bin/safe.sh: /bin/sh: bad interpreter: Text file busy*
내 질문 : 나는 /usr/bin
로 이동 한 후 내가 (선두 ./
없이) 다른 디렉토리에 실행하려고하지만
./safe.sh filename
, 그것은 실패로 내가이 스크립트를 경로 (echo $PATH
에 의해 검증 됨)로 옮기면 왜 실패하나요?
D' oh? 탐구하는 마음은이 일을하는 법을 알고 싶어합니다.
어떻게 실행 했습니까? 또한 실행 파일로 표시 했습니까? – sidyll
음,/사용자/bin에이 경로에 그래서 난 그냥 네, 실행 파일로 표시하는 + X safe.sh chmod를 않았다 safe.sh 파일 이름 입력합니다. – K7AAY