I'm trying to edit a file from a remote computer connected via ssh. How can I open the remote file on my local computer to edit?
You can mount the remote directory with
sshfs, after that, the file is accessible in your local directory tree.
sshfs user@domain:/remote/directory/ /local/directory/
It's all in the man pages.
Or just copy the file over with
scp/rsync, edit it, and copy it back.
1When I try the 'sshfs' command it throws a "missing host" error. Any way around that? This is what I'm trying to do:
sshfs USER@IP_ADDRESS//~/folder/folder_here/another_folder/file.txtNote: I didn't use a port number if that matters. Feb 15, 2015 at 17:08
2@masterninja01 You need to specify a local mount point; also, you can't mount the actual file, you would mount the directory (also: the source address needs to include a colon) so:
sshfs USER@IP_ADDRESS:~/folder/ ~/folder.
~/folderneeds to exist locally. Feb 15, 2015 at 18:28
sshfs -o IdentityFile=~/.ssh/keyname user@domain:/some/remote/dir/ /my/local/dir/sshfs ssh key parameter is different from ssh parm Jun 16, 2022 at 13:40
If you are familiar with vim, you may use it as follows:
Make sure not to forget the "/" character before the filepath; otherwise it won't work; for example:
You can skip the portnumber if is the same of the default on your
2Are the changes written back to server?– jnovachoAug 8, 2017 at 11:25
@jnovacho, I confirm that yes, changes are written back to the server. It works also with gvim. Jul 21, 2018 at 2:24
@dgsleeps What part of the
/etc/ssh/sshd_configdo you check for the port? I have a couple of ports in my file.– cokedudeJan 7, 2020 at 5:15
If you use GNOME or KDE:
- open file manager
- press Ctrl+L to focus address bar
sftp://host/and press Enter (replace "host" with your target host)
The file system of the remote host will be displayed in file manager now, and you can navigate to your target directory and double-click the file to open it. As far as I know you can now use any local program to open the file (it doesn't have to be a Gnome or KDE application).
You should also be able to set a bookmark to the remote target directory, to quickly get there again later.
If you want to connect as a different user or using a different port, you can use
During a ssh session you can just open the file with an editor, for example
$ vi file.txt
If you're not sure how to use these, check the manpage.
If you want to use GUI programs installed on the remote machine, you can forward remote display to your local PC.
$ ssh -X email@example.com
Now open a remote file using a GUI editor installed on remote machine
$ geany ~/Documents/file.txt
I found the easiest way for me was to mount the folder (with CIFS in my case)
See How do I access a mounted Windows share from the command line?.