linux 普通使用者登入後,執行 shell指令碼切自動輸入密碼切換到root
1.首先安裝expect
2.2.編寫指令碼 /home/zukgit/suz.sh
#!/bin/bash # #!/usr/bin/expect -f 使用這種方式 程式無法執行
expect -c "
spawn su -
expect \":\"
send \"yourpassword\r\"
interact
"
當然安全性會降低,root使用者的密碼是明文的容易暴漏。
3. 賦許可權 拷貝到 /usr/bin/中
----------------
chmod 777 /home/zukgit/suz.sh
cp /home/zukgit/suz.sh /usr/bin/
4.起別名在 /home/zukgit/.bashrc 檔案末尾新增alias suz="/usr/bin/suz.sh"
ctrl+H檢視隱藏檔案 那麼每次登入即可輸入suz完成不需手動輸入密碼登入su 否則別名重啟登出就失效
echo > XXX 會覆覆蓋整個檔案 echo >> XXX 會在末尾加入該命令
----------------
echo 'alias suz="/usr/bin/suz.sh"' >> .bashrc
相關推薦
linux 普通使用者登入後,執行 shell指令碼切自動輸入密碼切換到root
1.首先安裝expect 2.2.編寫指令碼 /home/zukgit/suz.sh #!/bin/bash # #!/usr/bin/expect -f 使用這種方式 程式無法執行 expect -c " spawn su - expect \":\" send
jenkins 以root使用者執行Shell指令碼並不需要輸入密碼
預設所有的sudoer都需要在tty是執行,由於jenkins Shell不是在tty上執行先把預設tty關閉,然後開啟只有jenkins不需要tty,其它都需要#Defaults requirettyDefaults:apache !requiretty然後為jenk
ubuntu執行sh指令碼sudo自動輸入密碼
示例: sudo apt-get update 第一種方法:使用管道(上一個命令的 stdout 接到下一個命令的 stdin): #!/bin/bashecho password | sudo
shell指令碼中自動輸入密碼
在shell指令碼中需要用root用的來執行指令:sudo 自動輸入密碼echo "password" | sudo -S netstat -tlnp -S The -S (stdin) option causes sudo to read t
expect 普通用戶自動輸入密碼到root下,執行命令
expect案例:當前服務器取消了直接使用root登錄服務器,只能使用普通用戶先登錄,然後再su - root 執行root下的命令。 shell腳本如下: #!/usr/bin/expect -fset password {root_password}spawn su - rootexpect "
shell中scp自動輸入密碼
shell``` #!/bin/bash des_pass=testtest expect -c " spawn scp target/aaa-0.0.1.war [email protected]/* */:/home/GameUser/MagicvesselUserWeb/aaa-releas
linux指令碼實現自動輸入密碼
使用Linux的程式設計師對輸入密碼這個舉動一定不陌生,在Linux下對使用者有嚴格的許可權限制,幹很多事情越過了許可權就得輸入密碼,比如使用超級使用者執行命令,又比如ftp、ssh連線遠端主機等等,如下圖 那麼問題來了,在指令碼自動化執行的時候需要輸入密碼怎麼辦?比如你
[轉載] Linux export變數的生命週期和shell的生命週期相同,即shell指令碼執行完畢後,相應的export變數便失效了
說說shell指令碼中的export 和 source,bash 小弟剛剛接觸linux,對linux上的很多東西都比較陌生,所以寫一寫部落格,當做自己工作的總結和技術的積累吧,也是鞭策自己不斷努力的去學習。 今天之所以起這個標題,把export,source ,bash這三個命令放在一起講
使用crontab,讓linux定時執行shell指令碼
使用crontab你可以在指定的時間執行一個shell指令碼或者一系列Linux命令。例如系統管理員安排一個備份任務使其每天都執行 入門 # crontab –e 這樣可以已編輯模式打開個人的crontab配置檔案,然後加入一下這行: 0 0 * * * /home
kettle-linux環境下部署kettle,執行kitchen.sh檔案報錯後安裝 libwebkitgtk,提示沒有可用軟體包libwebkitgtk。
執行./kitchen.sh 報錯資訊: [[email protected] data-integration]# ./kitchen.sh ##########################################################
並發實戰:多線程處理任務,結束後,執行後續操作
batch add 批次 for return countdown executors 操作 current 場景: 分批從大列表 blist 讀取數據,執行驗證過濾,符合條件的加入到列表中。然後執行批量入庫操作。 思路: 多任務從 blist 取數據執行,采用Excuet
安裝webpack後,執行webpack -v命令時報錯:SyntaxError: Block-sc
nodejs webpack 排錯 版本不兼容 安裝webpack後,執行webpack -v命令時報錯如下: [root@FreeServer ~]# webpack -v /usr/local/node-v4.4.7-linux-x64/lib/node_modules/webpack/b
Mac 安裝 MySQL 5.7 後登入後無法執行命令【You must reset your password using ALTER USER statement before executing this statement.】
question 服務 com flow alter ima 5.7 use sql 今天在 Mac 上安裝了 MySQL 5.7 ,啟動服務後,輸入 mysql -u root -p 後,輸入初始密碼程,嘗試執行 show databases; 報了一個 You mu
Linux搭建好apache後,只有本地能訪問,局域或外網不能訪問
clas 直接 啟動 emctl 描述 wall 啟動服務 fir 訪問控制 由於防火墻的訪問控制導致本地端口不能被訪問。 解決方法: 1,直接關閉防火墻 systemctl stop firewalld.service #停止防火墻服務 systemctl disab
linux筆記:安裝程式後,使用時顯示找不到命令(command not found)
在linux中,用各種工具下載安裝程式後,使用時顯示找不到命令(command not found)解決方法 其實這個問題與在windows安裝程式後,在命令列下使用不了是一個原因:沒有配置環境變數 linux解決方法: linux中假如你安裝了一個A程式,在終端輸入 f
Python實現:某個使用者登入後,檢視自己擁有所有許可權
許可權管理 許可權表:
layer刪除幾秒後,執行重新整理或跳轉
1. layer.msg('刪除成功',{icon: 1,time:1000}) 2. layer.msg('刪除成功',{ time:1000, end:fun
appium 連結真機後,執行程式碼,但是APP並沒有啟動
要淡定,連結真機後,問題一下多出來這麼多,還沒有啟動程式,就碰到接二連三的問題。 爽到家了。慢慢解決吧。 具體問題是這樣的: # coding=utf-8from appium import webdriverimport timefrom selenium.common.exceptions impo
在瀏覽器輸入URL後,執行的全部過程
在瀏覽器輸入URL後,執行的全部過程 域名解析 發起TCP的3次握手 建立TCP連線後發起http請求 伺服器響應http請求 瀏覽器解析html程式碼,並請求html程式碼中的資源(如js,css,圖片等) 斷開TCP
Linux安裝JDK1.8後,java -version仍然顯示版本為1.7的問題
最近在Linux上執行kafka時,遇到因JDK版本過低,無法執行的問題。java -version了一下,發現我新裝的系統預設的是自帶的OpenJDK1.7 。於是我打算重灌一個JDK1.8. 首先,先去官網下載了相應的安裝包;其次解壓到/usr/local/src/jd