gpt4 book ai didi

linux - 从bash脚本启动Shrewsoft

转载 作者:行者123 更新时间:2023-12-03 10:01:13 25 4
gpt4 key购买 nike

概要

连接到Shrew soft vpn
-终端-命令正常
-bash脚本-同一命令返回错误:

"double free or corruption (out)"



问题

我经常使用shrewsoft VPN客户端连接到我的工作VPN。我想创建一个bash脚本,以便可以使用一个命令来设置vpn客户端以及其他一些环境变量。当我从终端运行命令时,它工作正常。但是bash脚本中的同一命令失败。

终端命令
ikec -r "<shrewsoft vpn connection name>" -u "john" -p "<password>" -a

Bash脚本

#! bash
ikec -r "<shrewsoft vpn connection name>" -u "john" -p "<password>" -a

然后在终端中运行命令:
> sudo bash ./vpn_connection.sh

我已经开始“sudo/usr/sbin/iked”。从终端,我可以连接并成功运行该命令,但是从bash脚本运行该命令时,出现错误。

最佳答案

运行Shell脚本时,它将丢失您定义但未导出的所有环境变量。在sudo下运行脚本时,sudo会清除环境,除了几个变量。

可能是ikec依赖于缺少的环境变量,或者脚本执行的ikec不相同,可能是由于PATH更改或别名所致。

顺便说一下,我不会为此使用脚本。我会使用别名或函数。在您的~/.profile~/.bash_profile(无论使用哪种方式)中,尝试:

alias vpn-connect='ikec -r "<shrewsoft vpn connection name>" \
-u "john" -p "<password>" -a'

然后,您可以简单地与
$ vpn-connect

但是,关于文件中密码的注释中的观点是正确的。寻找一种无需输入密码即可连接到VPN的方法。如果不能,则可以不使用该选项,而让ikec提示您。

关于linux - 从bash脚本启动Shrewsoft,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60894026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com