Ich möchte Folgendes in eine Zeile im Terminal schreiben oder wenn es einen kürzeren Weg gibt, eine Datei zu erstellen und die Berechtigungen festzulegen, kommentieren Sie dies bitte.
sudo touch .htaccess
sudo chmod 766 .htaccess
Sehr geschätzt
Verwenden Sie '&&', um den zweiten Befehl bedingt auszuführen, wenn der erste erfolgreich ist.
sudo touch .htaccess && sudo chmod 766 .htaccess
&&
ist im Allgemeinen besser als;
anzuhalten, wenn der erste Befehl fehlschlägt, 2. ist es im Allgemeinen besser, nur das spezifische Programm auszuführen, das benötigt wirdsudo
, anstatt zu versuchen, sie in einem einzigensudo
Aufruf zu kombinieren und auszuführen mehr Code mit erhöhten Rechten als nötig.scp [email protected]:file1 && scp [email protected]:file2 && scp [email protected]:file3
ich, wenn ich ein Passwort für meinen SSH-Schlüssel festgelegt habe und mich ständig nach dem Passwort fragt? Gibt es eine Möglichkeit, es zu kombinieren?Nein ist es nicht.
Sie können diese beiden Befehle nur in einem kombinieren
sudo
:Eine andere Lösung (ohne einen externen Anruf, aber auch mit zwei Befehlen):
quelle
&&
stattdessen zu verwenden;
. Außerdem würde ich im Allgemeinen nur zweisudo
Befehle verwenden, da es übertrieben und riskanter ist, eine ganze Shell mit erhöhten Berechtigungen auszuführen, anstatt nur die genauen Programme, die mit ihnen ausgeführt werden müssen (in diesem Fall touch und chmod).Mit Semikolons können Sie mehrere Befehle in eine einzelne Zeile einfügen:
sudo touch .htaccess; sudo chmod 766 .htaccess
quelle
&&
anstatt;
wenn voneinander abhängige Befehle ausführen , so dass er stoppt , wenn ein Befehl fehlschlägt.Trennen Sie die Befehle mit einem Semikolon. (;)
Beispiel
quelle