Linux免密码切换用户
目录免密码切换用户反面案例 普通的Here-Document EOF一、避开 Here-Document问题二、解决 Here-Document问题免密码切换用户在不做sudo的情况下想要免输密码切换用户可以编写交互式脚本。两种方案1、使用-c避免 Here-Document 问题EOF2、解决 Here-Document 问题反面案例 普通的Here-DocumentEOF#!/bin/bashpassword123456/bin/expectEOF spawn su - root expect { password: {send ${password}\r} } interact # 此处的 interact 会失败因为 expect 无法接管 fd0 让用户手动输入interact 瞬间失效或退出 EOF一、避开 Here-Document问题#!/bin/bashpassword123456/bin/expect-c spawn su - root expect {\password:\{send\${password}\r\} } interact 二、解决 Here-Document问题Here-Document会劫持 stdin解决 stdin 被劫持、让 interact 能够正常获取物理 TTY 键盘输入#!/bin/bashpassword123456/bin/expect(catEOF spawn su - root expect { password: {send ${password}\r} } interact EOF)