GNU/Linux >> Linux Esercitazione >  >> Debian

Debian – Dove dovrei mettere il sudo in questo comando??

Questa domanda ha già risposte qui :Chiuso 9 anni fa.

Possibile duplicato:
Reindirizzamento di stdout a un file per il quale non disponi dell'autorizzazione di scrittura

echo "some words" >> /etc/apt/source.list

permission denied

sudo echo "some words" >> /etc/apt/source.list

anche il permesso di ritorno negato

Quindi penso che forse l'operatore append sia un altro comando, dovrei mettere sudo prima di esso, quindi provo

echo "some words" >> sudo /etc/apt/source.list

anche il permesso di ritorno negato

come devo svolgere questo compito?

Risposta accettata:

sudo sh -c 'echo "some words" >> /etc/apt/source.list'

Il motivo per cui sudo echo "alcune parole">> /etc/apt/source.list non funziona è perché sudo sta aumentando i privilegi del comando "echo" e non il reindirizzamento.

Il>> reindirizzamento fa sì che la shell corrente crei/aggiunga al file. Non riesce perché la tua shell non ha i permessi per farlo.

Il motivo per cui la mia risposta funziona è che stai eseguendo l'intera cosa (eco e reindirizzamento) in una nuova shell che è stata sudo. sh -c ... invoca una nuova shell ed esegue il comando fornito in quella subshell. Il sudo prima di eseguire quella subshell con privilegi escalation.

Il secondo esempio sudo non ha senso, perché sudo richiede l'esecuzione di un comando e non è quello che stai passando. Scommetto che ora hai un file nella directory locale chiamato sudo con contenuti "alcune parole". Sentiti libero di eliminarlo 🙂


Debian
  1. Come visualizzare la tabella di routing di rete in Debian 10

  2. Crea rapidamente un file di testo tramite il terminale Debian

  3. Debian – Trovare il pacchetto che fornisce un dato comando?

  4. Come risolvere il comando Sudo non trovato in Debian 10

  5. Dov'è il comando gem in RHEL6?

Converti documenti in PDF sulla riga di comando Debian

Personalizza la riga di comando di Debian

Come impostare il browser predefinito su Debian tramite la riga di comando

Padroneggiare il comando ad albero su Debian

Come installare l'ultimo kernel su Debian 11 e derivati

Come installare balenaEtcher su Debian 11 Bullseye