So führen Sie ein Shell -Skript als anderer Benutzer aus

So führen Sie ein Shell -Skript als anderer Benutzer aus
Manchmal ist es möglicherweise erforderlich. Dies ist ziemlich einfach und kann in ein paar einfachen Schritten durchgeführt werden. Wie gehen Sie also vor? Lass es uns herausfinden.

Voraussetzungen

Stellen Sie vor dem Start sicher, dass Sie Zugriff auf die Hülle eines Linux -Systems haben. Jede Linux -Verteilung läuft in Ordnung. In diesem Leitfaden führen wir Ubuntu 18 aus.04.

Ebenso wichtig ist es, sicherzustellen, dass Sie ein Shell -Skript mit Ausführungsberechtigungen haben. Wir haben ein einfaches Shell -Skript namens Willkommen.Sch Das fordert den Namen eines Benutzers an und druckt ihn in das Terminal aus. Hier ist ein kleiner Blick.

So führen Sie ein Shell -Skript als einen anderen Benutzer aus

Normalerweise ist es ein Kinderspiel, ein Shell-Skript als derzeit angemeldete Benutzer auszuführen. Rufen Sie einfach das Shell -Skript wie folgt an:

$ ./Willkommen.Sch

Aber wie würden Sie das Skript als einen anderen Benutzer von sich selbst ausgeführt?? Um dies zu erreichen, verwenden Sie einfach die Syntax, die angezeigt wird, wo die Andere Ist der unterschiedliche Benutzer, den Sie ausführen möchten, das Skript ausführen.

$ su Sonstiger Skript.Sch

Angenommen, wir wollen das Skript als das ausführen Linuxways Benutzer. Der ausführende Befehl ist:

$ su Linuxways -S Willkommen.Sch

Um zu bestätigen, dass der andere Benutzer das Skript ausgeführt hat, werden wir den Befehl wie gezeigt ausführen.

$ sudo -h -u Andere Bash -C 'echo "Ich bin $ user, mit uid $ uid"' '

In diesem Fall ist unser anderer Benutzer Linuxways, Also werden wir den Befehl aufrufen.

$ sudo -h -u linuxways bash -c 'echo "Ich bin $ user, mit uid $ uid"' '

Der $ Benutzer Und $ Uid Variablen drucken Sie den Benutzernamen und die UID des Benutzers aus, das das Skript ausführt. Wenn Sie Zweifel haben oder falls Sie dies überprüfen möchten, können Sie die anzeigen /etc/passwd Datei und suchen Sie nach den Details des Benutzers wie folgt.

$ cat /etc /passwd | Grep Linuxways

Hier ist eine Zusammenfassung der Ausgabe von beiden Befehlen. Beachten Sie, wie der Benutzername und die UID das Shell -Skript ausführen /etc/passwd Datei.

Abschluss

Wenn Sie sich gefragt haben, wie man ein Shell -Skript als einen anderen Benutzer ausführt, sind wir zuversichtlich, dass Ihre Suche jetzt zu Ende geht.