我試圖在我的團隊的服務器上編寫一些腳本,並且遇到了一些困難。使用perl在一行中運行多個系統命令
對於我正在編寫腳本的部分,我需要通過sudo su APPUSER
讓用戶切換用戶,然後運行幾個命令。但是,sudo鎖定在我們的服務器上,我無法運行如下所示的代碼:sudo su APPUSER -c COMMAND
。我已經要求修復,系統管理員總是說「不」。
我目前使用perl來編寫腳本,我需要放入appuser而不是開發者的用戶來運行三條命令。我可以在命令行上通過連續執行每個命令來完成它,但我不知道如何讓perl來完成。
我該如何讓perl在命令行上執行多個命令,其方式不會在上次執行後丟棄shell/state?即運行多個system
呼叫不起作用。
爲什麼不把這些命令在shell腳本,並使用Perl來運行? – SheetJS
爲什麼perl當已經在shell中並只使用'system' –
因爲腳本無論是shell還是perl,最初都是作爲dev用戶執行的。除非手動完成,否則都不能成功下載到appuser,這是我希望避免的。 – Malfist