1. 程式人生 > >sudo 命令直接新增密碼到指令碼

sudo 命令直接新增密碼到指令碼

問題

有些情況下,部分指令碼命令需要獲取管理員許可權了執行:

sudo gem install fastlane

在一般情況下,需要等待你輸入管理員密碼以繼續執行。如果你需要在 Jenkins 等需要自動化執行的指令碼中時不可行的,此時就需要不輸入密碼來執行指令碼。

解決方案

1、全域性配置

2、將密碼以引數形式追加到指令碼

  • 使用管道
echo [password] | sudo -S gem install fastlane
  • 使用文字塊輸入重定向
sudo -S gem install fastlane << EOF 
[password]
EOF

說明

1、-S 引數

-S 引數是 sudo 命令的可選引數,用以接收標準的密碼輸入

-S, --stdin                 read password from standard input

2、 << EOF 命令

在shell指令碼中,通常將EOF與 << 結合使用,表示後續的輸入作為子命令或子Shell的輸入,直到遇到EOF為止,再返回到主Shell。
在上面的場景中,就是將‘password’當做命令的輸入。

相關推薦

sudo 命令直接新增密碼指令碼

問題 有些情況下,部分指令碼命令需要獲取管理員許可權了執行: sudo gem install fastlane 在一般情況下,需要等待你輸入管理員密碼以繼續執行。如果你需要在 Jenkins 等需要自動化執行的指令碼中時不可行的,此時就需要不輸入密碼

以一個例子來講ubuntu12.04下指令碼檔案內執行sudo 命令自動輸入密碼

原文連線http://blog.sina.com.cn/s/blog_951ca19b0101be96.html  在上一篇的文章中(發文時間為2012-10-30 16:09),掛載U盤指令碼檔案和解除安裝U盤指令碼檔案中都用到sudo命令,因此需要使用者手動的輸入密

用戶密碼管理、mkpasswd命令、su命令sudo命令、限制root遠程登錄

art 本地 想要 adding mil 管理 切換用戶 1.5 tdi 用戶密碼管理更改用戶密碼:passwd set_uid ==更改普通用戶密碼 passwd canshengpasswd

可以在命令直接使用密碼來進行遠端連線和遠端拉取檔案的命令:sshpass

  應用範圍:可以在命令列直接使用密碼來進行遠端連線和遠端拉取檔案。 使用前提:對於未連線過的主機。而又不輸入yes進行確認,需要進行sshd服務的優化: # vim /etc/ssh/ssh_config StrictHostKeyChecking no # vi

[VMware]虛擬機器命令列啟動的直接可執行指令碼

寫在前面 遇到網路上坑有點多,所以自己實驗出來後把結果分享到這裡,供大家參考。 Windows平臺bat指令碼 主要分三塊,一塊是對應VMware平臺地址;一塊是vmrun的對應vmx地址還有是否顯示gui的引數gui或者nogui C: cd "\Program Fil

解決 shell指令碼中SCP命令需要輸入密碼的問題

本文轉自:https://blog.csdn.net/u012454773/article/details/72779439 使用金鑰檔案,兩臺機器建立信任 這裡假設主機A(192.168.100.3)用來獲得主機B(192.168.100.4)的檔案。 在主機A上執行如下命令來生成配對金鑰:

使用shell指令碼命令新增crontab 定時任務

crontab 是運維過程中常用的定時任務執行工具         一般情況下在有新的定時任務要執行時,使用crontab -e ,將開啟一個vi編輯介面,配置好後儲存退出,但是在自動化運維的過程中往往需要使用shell指令碼或命令自動新增定時任務。接下來結束三種(Cent

ssh免密碼遠端執行sudo命令

目的是執行下面的命令不需要輸入任何密碼! >ssh [email protected] "sudo command" 1. 在本地機器上生成祕鑰對兒 ssh-keygen -t rsa 一路回車後生成在~/.ssh/目錄下生成兩個檔案id_rsa和id

CentOS下新增普通使用者到sudo組,免密碼登入

1.1 sudo          Sudo是linux系統中,非root許可權的使用者提升自己許可權來執行某些特性命令的方式,它使普通使用者在不知道超級使用者的密碼的情況下,也可以暫時的獲得root許可權。          一般,普通使用者在執行特殊命令是,只需要在特殊

linux使用者新增sudo命令許可權

xxx is not in the sudoers file.This incident will be reported.的解決方法轉載自:http://www.cnblogs.com/zox2011/archive

linux常用命令sudo命令解釋及配置免密碼使用方法

sudo命令用來以其他身份來執行命令,預設的身份為root。在/ect/sudoers設定了可執行sudo指令的使用者。未經過設定的使用者不可使用sudo未經過免密碼設定的使用者使用sudo時,必須先輸入密碼,之後有5分鐘的有效期限,超過期限則必須重新輸入密碼。設定某使用者(

sudoers檔案設定sudo命令無密碼(root密碼)登入

參考部落格:http://xvshell.iteye.com/blog/1838093 1. 當用戶執行sudo時,Linux系統會去尋找/etc/sudoers檔案,並且這是主動的,判斷使用者是否有執行sudo命令的許可權2. 如果使用者有執行sudo的許可權,讓使用者輸入

linux禁用root給指定使用者新增sudo命令

1.用root登入後,首先通過 useradd test 命令新增使用者,然後通過 passwd test 命令給"test"使用者新增密碼 2.建立好自己的使用者後,通過     chmod u+w

sudo命令和root直接執行的區別(轉)

sudo可以用使用者的環境,也就是獲得root許可權時仍然使用使用者自己的環境變數例如,假如我在使用者pansz環境中為vim配好了一套很習慣的配置,直接用root的話,那麼vim就使用root使用者的環境了,我為pansz使用者定製的屌炸天的外掛都沒有了,vim成了原始配置。而用sudo則可以保持使用者的環

linux sudo 命令

linux簡單的說,sudo 是一種權限管理機制,管理員可以授權於一些普通用戶去執行一些 root 執行的操作,而不需要知道 root 的密碼。嚴謹些說,sudo 允許一個已授權用戶以超級用戶或者其它用戶的角色運行一個命令。當然,能做什麽不能做什麽都是通過安全策略來指定的。sudo 支持插件架構的安全策略,並

centos6 配置sudo命令日誌審計

sudo 日誌審計 sudo命令日誌審計 配置sudo命令日誌審計說明:所謂sudo命令日誌審計,並不記錄普通用戶的普通操作,而是記錄那些執行sudo命令的用戶的操作。項目實戰:服務器日誌審計項目提出與實施權限方案實施後,權限得到了細化控制,接下來進一步實施以地所有用戶日誌記錄方案。通過sudo和

sudo 命令

div pan 默認 配置文件 文件 用戶 sudo code sudo 命令 sudo :以 root 用戶的身份去執行命令 [[email protected]/* */ ~]# sudo ls # 以 root 用戶執行 ls 命令 [[em

sudo命令

nbsp success sbin exec add 是否 變更 用戶授權 執行 su命令   switch user的縮寫, 意為切換至指定用戶執行命令 常用選項   -c<指令>或--command=<指令>:執行完指定的指令後,即恢復原來的身份

執行sudo命令時command not found的解決辦法

解決 這就是 t權限 子進程 lock 包括 defaults 什麽 調用 問題的原因: 在編譯sudo包的時候默認開啟了- -with-secure-path選項。 方法1: sudo vim /etc/sudoers,並在文件內增加這麽一行:Defaults secu

使用MYSQL命令直接導入導出SQL文件(轉)

cmd 界面 eat 保存 tail utf mysqldump info tails 參考:http://blog.csdn.net/jiary5201314/article/details/52026816 1.MYSQL中將數據庫導出成SQL文件 其實很簡單的,就