我想用ssh执行bash脚本,但是当我尝试使用它时,它使用的是用户默认shell的ksh。
我无法更改默认设置。
那么,如何使用bash而不是默认的shell来欺骗ssh来执行我的脚本?
答案 0 :(得分:5)
将其设为first line of your script:
#!/usr/bin/env bash
编辑:根据this,/usr/bin/env
的实用程序可疑。所以,你可能想要:
#!/bin/bash
将/bin/bash
替换为bash
可执行文件的实际路径。
答案 1 :(得分:3)
您可以使用bash明确调用脚本:
ssh <ssh-opts> bash <scriptname>
这样在登录时会执行ksh,但在ksh中你会开始执行你的脚本bash。