shell脚本切换用户

2019/03/06 Shell

配合gitlab-runner自动化拉取代码操作,由于机器设置了特定账户才能允许git相关操作,故需要切换用户。

实现shell脚本切换用户并执行后续操作,需要使用expect脚本(或shell调用expect),如下为一个简单的更新代码的demo

#! /usr/bin/expect
spawn su - 要切换的账户
expect "Pas"
send "您的账户密码\r"
expect "#"
send "whoami\r"
expect "账户"
send "cd /u/*/www/*\r"
send "echo 更新代码中\r"
send "git pull origin dev\r"
send "echo 代码更新完毕\r"
send "exit\r"
expect eof

Search

    Table of Contents