Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 是否有任何方法可以从SFTP的shell脚本中的env文件中获取用户名和服务器_Bash_Shell_Sftp - Fatal编程技术网

Bash 是否有任何方法可以从SFTP的shell脚本中的env文件中获取用户名和服务器

Bash 是否有任何方法可以从SFTP的shell脚本中的env文件中获取用户名和服务器,bash,shell,sftp,Bash,Shell,Sftp,我在bash文件中使用sftp命令 sftp myname@server<<EOF 如何在sftp命令中使用此值 sftp %myname@%server<<EOF sftp%myname@%server#如果这些行在文件中,“.filename”将在当前shell中设置它们 myname=UsernameGoesher server=host.example.com sftp“${myname}@${server}”Bash,还是批处理%myname是Windows

我在bash文件中使用sftp命令

sftp myname@server<<EOF
如何在sftp命令中使用此值

sftp %myname@%server<<EOF
sftp%myname@%server
#如果这些行在文件中,“.filename”将在当前shell中设置它们
myname=UsernameGoesher
server=host.example.com

sftp“${myname}@${server}”Bash,还是批处理<代码>%myname
是Windows批处理语法;bash使用美元符号进行参数扩展;因此,
sftp“${myname}@${server}”(而且,
server=servername
也不是有效的bash语法;它必须是
server=servername
,不带空格)。(嗯;很难找到重复的方法——我们的知识库中已经有很多更难的问题,比如“如何用另一个变量的名称取消引用一个变量?”,但是像“如何在bash中使用变量?”这样的简单变量很难找到,如果它们存在的话)@Helen:你从哪里得到这个有趣的语法?请始终发布你的完整脚本,至少在我们知道你实际上在做什么的情况下。你在这里发布的代码片段对我来说没有多大意义。为了进行调试,你可能需要使用
-x
运行你的脚本,这样你就可以看到发生了什么。
sftp %myname@%server<<EOF
# if these lines are in a file, ". filename" will set them in the current shell
myname=userNameGoesHere
server=host.example.com

sftp "${myname}@${server}" <<EOF
...commands here...
EOF