在Ubuntu 12.04上通过ssh访问远程文件
我的一台计算机上有一个运行12.04的文本文件。 我打算使用ssh允许另一台计算机读取此文本文件。 问题是我正在使用的系统基本上是实时记录这个文本文件的一些信息。 我需要用于读取此文本文件的计算机,以便实时读取文本文件。
我对ssh一点也不精明,但我对ubuntu很熟悉。 如果有人可以提供一些有关如何执行此操作的信息,或者甚至可以实时读取此文本文件,而另一个系统正在记录信息,则将非常感激。
谢谢。
“读取”文件是什么意思? 如果您只想将内容回显给STDOUT,那么应该这样做。
ssh user@remoteHostName 'tail -f /myDirectory/myFile.txt'
如果您正确设置了SSH,那么这应该有效,“user”是远程主机上的有效用户,而tail
命令上的-f
标志将允许它在增长时查看文件。
您可以使用sshfs
。 安装并设置 sshfs。
设置sshfs后,将这2个别名添加到.bashrc中。
alias fuse-mo='sshfs remote_user@remote_server:/home/ternovi/your_local_folder /home/remote_user/folder_with_file -o idmap=user -o reconnect' alias fuse-um='fusermount -u /home/ternovi/your_local_folder'
现在使用所需路径创建文件夹/home/ternovi/your_local_folder
。
如果执行别名fuse-mo
, fuse
模块会将远程文件夹挂载到本地文件夹,您将在/home/ternovi/your_local_folder
看到本地计算机上的远程文件。 您可以使用这些文件,因为它们是本地文件。
别名fuse-um
将卸载远程文件系统。
您可以使用tail -f /home/ternovi/your_local_folder/file.txt
查看此文件的最新输出。 或者您可以使用任何您想要的editor
。
例如,在vim
打开文件:
vim /home/ternovi/your_local_folder/file.txt
您可以输入:e
来重新加载当前文件。