tente
sudo bash -c 'cat file1 >> file2'
ou
cat file1 | sudo tee -a file2
leia aqui em ubuntuforums
Estou tentando criar um arquivo usando cat > list
, mas sempre que me mostra "Permissão negada".
xyz@jaishreeram:/home$ sudo cat > list
bash: l: Permission denied
xyz@jaishreeram:/home$ sudo cat > list
bash: l: Permission denied
O local em que você está escrevendo os privilégios necessários de superusuário. No entanto, a maneira como você está escrevendo no arquivo não assume isso. Para isso, faça login como root usando su
e, em seguida, escreva usando cat > list
ou sudo vi list
.
AFAIK você não pode criar um arquivo usando cat
. Você precisa usar echo
. Então, basta executar isso para criar um arquivo chamado "lista":
Se você precisar de privilégios de root, primeiro autentique como root usando o% su -
agora você pode echo > list
agora você pode fazer logout como root usando logout
Isso porque o redirecionamento é feito antes do início do sudo, é por isso que você obtém "permissão negada" sem ser solicitada senha.
cat
é usado para concatenar arquivos e imprimir na saída padrão.
echo
é usado para exibir uma linha de texto, usando o "> file_name" você redirecionará essa linha de texto para "file_name" e se "file_name" não existir, o arquivo será criado.
PS: Existem toneladas de métodos para criar um novo arquivo usando a linha de comando, mas, na minha opinião, é mais rápido e fácil de lembrar.
O motivo é simples, você não tem permissão para escrever no diretório /home
, já que é de propriedade do root.
/home$ ls -la .
total 36
drwxr-xr-x. 6 root root 4096 Apr 19 05:03 .
drwxr-xr-x. 22 root root 4096 Sep 24 09:49 ..
Você deve usar o mesmo comando, mas no diretório "sua casa". Seu diretório pessoal é o diretório do usuário em /home
:
/home$ ls -la .
total 36
drwxr-xr-x. 6 root root 4096 Apr 19 05:03 .
drwxr-xr-x. 22 root root 4096 Sep 24 09:49 ..
drwxr-xr-x. 70 braiam braiam 4096 Sep 29 10:06 braiam
Você tem várias maneiras de acessar seu diretório pessoal:
cd
sem nenhum parâmetro. cd ~
ou cd $HOME
cd /home/yourusername
para acessar seu diretório pessoal.