Bash
忽略每個命令的 sudo
我目前正在研究預設使用者為 root 並且不可能使用 sudo 命令的 Linux 變體,因為沒有安裝這樣的包,在這種情況下也沒有添加它的選項。預設情況下,所有命令都以 root 權限執行。使用 sudo 列印
sh: sudo: not found
錯誤。不幸的是,我有一個測試儲存庫,其中包含很多帶有 的命令
sudo
,因為這些測試也在其他 Linux 發行版上執行。我的問題是:我可以準備一些 bash 腳本或類似的東西,它會
sudo
在任何命令中跳過嗎?我的意思是,當我執行 sudo 命令 like 時
sudo cat <some_path>
,我希望它執行 ascat <some_path>
,刪除sudo
部分。它可以對每個命令都以這種方式工作,因此腳本可以例如在啟動時執行並適用於每個 sudo 命令。
您可以嘗試設置這樣的別名:
alias sudo=""
一個簡單的無操作直通腳本將是:
#!/bin/sh "$@"
它只接受給定的參數,並使用它們執行命令,使用第一個作為命令名稱。所以如果安裝在
sudo
某處$PATH
,執行sudo ls -l "what ever"
時,應該和剛才一樣ls -l "what ever"
。當然,它不會查看任何選項,例如
sudo -s
會嘗試執行一個名為 的命令-s
,可能會出錯。