나는 현재 /bin
디렉토리에 있습니다. 디렉터리 내용의 텍스트 파일을 만들고 디렉터리 내의 다른 파일에 /bin
저장하려고 합니다. /root
명령을 입력했지만 ls -l >/directoryname/filename
실행할 권한이 없습니다. 명령을 입력하기 전에 입력을 시도했지만 sudo
그것도 작동하지 않았습니다. 이 파일을 저장할 수 있는 권한을 얻는 방법을 아는 사람이 있습니까? 매우 감사합니다.
답변1
sudo ls > /root/out.txt
ls
명령의 일부만 실행하는 경우 높은 권한으로 실행됩니다. 따라서 명령의 리디렉션된 부분에는 원하는 위치에 액세스하는 데 필요한 권한이 없습니다.
대신에 다음을 사용할 수 있습니다.tee
접두어는 sudo
다음과 같습니다.
ls | sudo tee /root/out.txt
답변2
sudo를 사용하여 여러 명령을 실행하는 간단한 솔루션은 다음과 같습니다.
sudo bash -c 'command1;command2'
귀하의 경우에는 이것이 유용할 것입니다:
sudo bash -c 'ls -l >/directoryname/filename'
물론 이것은 bash를 사용하는 경우에만 해당됩니다.
답변3
이것을 입력 sudo chmod 777 /filename
하고 실행하면 이전에 실행하려던 명령을 실행할 수 있는 권한이 부여됩니다. chmod 777
기본적으로 모든 사용자에게 이 디렉터리에 대한 읽기, 쓰기 및 실행 권한을 부여합니다. 그러나 나중에 사용자가 읽기 또는 쓰기만 가능하도록 권한을 변경할 수 있습니다.