gpt4 book ai didi

shell - 在Shell脚本中访问远程目录

转载 作者:行者123 更新时间:2023-12-02 14:39:31 25 4
gpt4 key购买 nike

我有一个接受目录输入的Shell脚本。我要处理的目录之一是在远程位置。我可以通过SSH进入远程主机,但是我希望能够以类似于Windows上UNC路径的方式引用远程目录(在Windows中,您可以键入“\ [远程主机] [共享]”并引用该路径在批处理文件中)。有没有一种干净的方法可以在Unix上使用ssh做类似的事情?当我调用shell脚本时,我希望能够键入以下内容:

./run_shell_script.sh ssh://<host>/<path>

而不是运行额外的命令只是为了处理该目录?这是在循环中的目录列表上完成的,因此,我不需要远程目录的特殊代码。

最佳答案

一种可能的解决方案是像这样解析URI:

_uri=ssh://host/path/to/file
_host=`echo $_uri | sed 's|^ssh://\([^/]*\)/.*$|\1|'`
_dir=`echo $_uri | sed "s|^ssh://$_host/\(.*\)\$|\1|"`

然后只是使用这些变量来ssh:
scp $_host:$_dir $local_dir

另外, sshfs 对您来说可能很有趣:它允许将远程主机安装到本地计算机上的目录中,而无需NFS管理负担,甚至没有root特权。

关于shell - 在Shell脚本中访问远程目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15120338/

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