Emacs—确定远程服务器名称/地址的dired模式测试

Emacs—确定远程服务器名称/地址的dired模式测试,emacs,elisp,dired,tramp,Emacs,Elisp,Dired,Tramp,在驱动模式处于活动状态时,是否有测试来获取当前缓冲区中的远程服务器名称(例如本地主机)或地址(例如12.34.56.789) 我想我可以使用字符串匹配或拆分字符串,然后使用相等,但我认为可能有一个方便的函数,比如获取服务器名称 iphone--dired目录 /ssh:root@localhost#2222:/var/mobile/Applications/F30B1574-5979-4764-8742-7F9DB2863094/Documents/.0.data: /ssh:lawlist@

驱动模式处于活动状态时,是否有测试来获取
当前缓冲区中的远程服务器名称(例如
本地主机)或地址(例如
12.34.56.789

我想我可以使用
字符串匹配
拆分字符串
,然后使用
相等
,但我认为可能有一个方便的函数,比如获取服务器名称

iphone--dired目录

/ssh:root@localhost#2222:/var/mobile/Applications/F30B1574-5979-4764-8742-7F9DB2863094/Documents/.0.data:
/ssh:lawlist@12.34.56.789:/home/lawlist/public_html:
共享服务器--目录目录

/ssh:root@localhost#2222:/var/mobile/Applications/F30B1574-5979-4764-8742-7F9DB2863094/Documents/.0.data:
/ssh:lawlist@12.34.56.789:/home/lawlist/public_html:

如果您感兴趣的是tramp路径,那么您可能希望查看
tramp解析文件名
或带有解析的tramp文件名的
。e、 g:

(tramp文件名主机(tramp解析文件名路径))
如果要排除端口,请使用
tramp file name real host

如果还不确定,您可能需要先检查
file-remote-p
;这也让我们找到了一条我从未注意到的捷径:

(file-remote-p路径“主机”)

(如果可能的话,这里没有无端口选项)

这似乎更像是一个流浪汉问题,而不是特定于DIRED的问题。@Barmar——感谢您帮助我找到正确的目标受众。:)非常感谢您的帮助——非常感谢!:)对于端口为2222的localhost,我最终使用了
(和(file-remote-p dired directory'localhost)(等于(tramp file name real host(tramp dissect file name dired directory))“localhost”)
。对于另一个远程服务器,我使用的是几乎相同的东西——只是替换localhost并用12.34.56.789替换它。