아래 제공된 셸을 사용하여 서버에 연결할 때카피스트라노모든 명령 전에 ~/default를 실행합니다. 이것이 Capistrano와 관련된 것인지, 아니면 파일에 ~/.bash_profile
. 우분투 12.04를 사용합니다.
(Capistrano 쉘, 비로그인, 비대화형 쉘..) ~/default
을 사용하여 포함을 생성하고 해당 서버에 연결하면 해당 쉘 세션에서 실행하는 모든 명령 앞에 echo "wut?"
"wut?"가 표시됩니다 .cap shell
답변1
cd ~/
실제로 홈 디렉토리의 별칭이며 다음과 같습니다.
cd /home/YourUsername
nginx
홈 폴더가 /var/www
이와 유사한 경우 사용자를 조사 /etc/passwd
하고 찾아보면 ngnix
알 수 있습니다.
예를 들어, root
임의의 사용자로 인증할 때 이 작업을 수행할 수 있습니다.
sudo user_that_launch_your_daemon
#or
su user_that_launch_your_daemon
file ~/default
어떤 파일이나 폴더인지 알 수 있습니다.
답변2
~/default
~
은 해당 사용자의 홈 디렉터리가 있는 파일 위치입니다 . 따라서 default
파일은 사용자의 홈 디렉터리에서 호출되어야 합니다. 이 명령을 사용할 수 있습니다
echo $HOME
아니면 이거:
ls -d ~
사용자의 홈 디렉토리를 찾으려면 를 사용할 필요가 없습니다 /etc/passwd
. 해당 사용자로 명령을 실행해야 하며, 필요한 경우 다음을 실행하여 어떤 사용자를 사용하고 있는지 확인할 수 있습니다.whoami
따라서 파일은 명령의 결과에 있어야 합니다.
echo $(ls -d ~)/default
또는 다음 명령:
echo $HOME/default