을 사용하여 코드를 실행하고 싶습니다
nohup shellskriptname &
. 그런데 파일을 보려고 할 때마다 nohup
해당 파일이 없다고 나옵니다. 이렇게 입력하려면 어떻게 해야 하나요?
#!/usr/bin/bash
# To Display Files and Folders from current Directory
echo Displaying all the Directories in the current directory
for item in *
do
if [ -d $item ]
then
echo $item
fi
done
echo Displaying all the Files in the current directory
for item in *
do
if [ -f $item ]
then
echo $item
fi
done
답변1
를 사용하거나 사용하지 않고 스크립트를 실행하는지 여부에 관계없이 nohup
쉘은 에 나열된 디렉토리에서 지정된 명령(스크립트)을 찾으려고 시도합니다 $PATH
. 디렉터리 경로(절대 또는 상대)를 사용하여 스크립트 이름을 지정하지 않으면 이 작업이 수행됩니다.
현재 FreeBSD 시스템 매뉴얼에서 nohup
유틸리티의 환경 변수 사용에 관해 설명합니다 PATH
.
PATH
이름에 해당/
문자가 포함되어 있지 않으면 요청된 유틸리티를 찾는 데 사용됩니다.
이는 쉘과 마찬가지로 명령에 디렉토리 경로가 포함되어 있지 않으면 nohup
지정된 유틸리티를 찾는다는 의미입니다.$PATH
따라서 스크립트가 shellskriptname
현재 디렉토리에 있고 현재 디렉토리가 의 디렉토리 중 하나가 아닌 경우 $PATH
다음을 사용하십시오.
shellskriptname
또는
nohup shellskriptname
당신이 설명하는 방식으로 실패합니다.
대신 스크립트 경로를 제공하십시오.
nohup ./shellskriptname
&
명령을 비동기 작업("백그라운드 작업")으로 실행해야 하는 경우 명령 끝에 이를 추가하세요.
실제 스크립트는 다음을 참조하세요.언제 큰따옴표가 필요합니까?