我正在尝试打印文件名以及从 SFTP 服务器到其他位置的路径。我能够获取文件名但无法获取路径。以下是我使用的代码:
echo "ls *.gpg" | sftp [email protected]:/SXMPMX/INBOUND/FORDCOI_CONT_RESP > $Path/sample.txt
请告诉我有什么方法可以解决我的问题。
答案1
总的来说,很多事情都可以变得更容易保险丝。
使用 FUSE 并在本地处理路径,使用本地工具,例如find
。这与我的另一个关于 FTP 的回答, 您只需sshfs
代替curlftpfs
。
在你想要的地方安装一个 SFTP 共享/some/mountpoint/
,然后使用cd
realpath --relative-to /some/mountpoint/ *.gpg
例子:
$ sshfs [email protected]:/ /some/mountpoint/
$ cd /some/mountpoint/SXMPMX/INBOUND/FORDCOI_CONT_RESP
$ realpath --relative-to /some/mountpoint/ foo.gpg # assuming the file exists
SXMPMX/INBOUND/FORDCOI_CONT_RESP/foo.gpg