【发布时间】:2015-03-08 15:09:47
【问题描述】:
我正在尝试编写一个脚本,它会在我更改文件后立即自动推送到我的服务器。
我目前的结果是这样的:
#! /bin/bash
DIRECTORY_TO_OBSERVE="/home/test"
function block_for_change {
inotifywait -r \
-e 'modify,move,create,delete' --exclude '(/4913|.swx|.swp)$' \
$DIRECTORY_TO_OBSERVE
}
while block_for_change; do
git add --all
git rm $(git ls-files --deleted)
git commit -m 'Update - $(date)'
git push -u origin master
expect "Username:"
send "TestUsernme\r\n"
expect "Password:"
send "TestPassword\r\n"
done
但是,expect 没有正常工作。一个示例日志是这样的: 手表成立。
/home/test/ MOVED_FROM test.sh
[master 8a749f5] Update - $(date)
1 file changed, 1 insertion(+)
Username for 'http://git.':
我的脚本有什么问题?为什么没有检测到用户名和密码是预期的?
【问题讨论】:
标签: bash automation push expect