답변:
Heredoc 사용 또는 "EOF에 추가"는 다음과 같습니다. 아니 문제.
모든 리디렉션 ( >
) 적용된 전에 실제 명령을 실행합니다. 즉, 쉘이 먼저 열려고 시도합니다. /etc/php5/apache2/php.ini
편지 쓰기 귀하의 계정을 사용하여 , 그런 다음 완전히 쓸모 없어집니다. sudo cat
.
이 문제를 해결할 수있는 한 가지 방법은 다음과 같습니다.
sudo bash -c "cat >> /etc/php5/apache2/php.ini" <<EOF
(당신은을 통해 대화 형 셸을 실행할 수 있습니다 sudo -s
, 또는 사용 dd
또는 tee
파일에 쓰기위한 것입니다.)
관련 메모에서 >
의지 덮어 쓰기 오래된 php.ini. 용도 >>
추가 할 수 있습니다.
EOF
", 정확히 같은" EOF
". 아니 " .EOF
"당신이 현재하고있는 것처럼.
sudo su
그리고 나서 적당한 쉘을 가지고 있습니다. root
. 이 명령을 실행하지 않고 sudo
접두사. 나중에, exit
루트 셸에서 돌아갑니다.
@grawity의 답변을 확대하여 tee 사용법을 보여줍니다.
sudo tee /etc/php5/apache2/php.ini >/dev/null <<EOF
# extensions
extension=”memcached.so”
extension=”apc.so”
EOF
덮어 쓰는 대신에 추가를 위해 티의 "-a"옵션을 사용하십시오.
ls -al /etc/php5/apache2/php.ini
, 파일의 권한 설정은 무엇입니까?