Ich weiß, dass wir das folgende Format verwenden können, um die Bildschirmausgabe in eine Datei umzuleiten:
$ your_program > /tmp/output.txt
Wenn ich jedoch den folgenden Befehl verwendet habe, heißt es "-bash: /home/user/errors.txt: Berechtigung verweigert".
sudo tail /var/log/apache2/error.log > ~/errors.txt
Darf ich wissen, wie diese Ausgabe funktioniert? Die Datei ~ / Errors.txt existiert nicht. Muss ich diese txt-Datei zuerst erstellen, bevor ich den Umleitungsbefehl verwende?
userder Benutzer, der den Befehl ausführt?
sudo. sudoerlaubt keine Umleitung. Zu viele Möglichkeiten, damit die Leute damit ungezogene Dinge tun können, die nicht in der sudoers.confDatei enthalten sind. Alternativ können Sie sudo bash -c "tail /var/log/apache2/error.log > ~/errors.txt"das Ende von Errors.log in die Datei in Ihrem Home-Verzeichnis verschieben.
echo hi > ~/errors.txt? Ist/home/userIhr korrektes Home-Verzeichnis (oder hat Bash irgendwie verwirrt, wo sich Ihr Home-Verzeichnis befindet)?