我在一台运行 Lion 的 MacBook 上。我使用 .Terminal
连接到我的学校服务器ssh
。我导航到服务器上的一个文件夹,并有一个文件想要复制到本地计算机,但我不知道本地计算机的 IP 地址是什么。我怎么才能得到它?我位于服务器上的文件夹中,我想复制read.txt
到本地计算机的硬盘上。我已经尝试过scp ./read.txt [my computer name].local/newRead.txt
,但没有成功。
答案1
您无需知道自己主机的 IP 地址即可将文件复制到该主机。只需使用scp
复制文件即可从远程主机:
$ scp [email protected]:path/to/read.txt ~/path/to/newRead.txt
如果你想复制到从远程主机获取本地主机,获取您自己的 IP 地址ifconfig
并发出以下命令:
$ scp path/to/read.txt [email protected]:path/to/newRead.txt
1.2.3.4
您的本地 IP 地址在哪里。提取主机 IP 地址的一种便捷方法是使用以下函数:
ipaddr() { (awk '{print $2}' <(ifconfig eth0 | grep 'inet ')); }
eth0
你的网络接口在哪里。将其插入~/.bash_profile
以便将其作为常规命令运行 - ipaddr
。
答案2
我刚刚找到了解决这个问题的最短路线
$ who
root pts/22 2016-12-28 13:22 (179.xx.xxx.xx)
如果通过 ssh 连接。这将显示登录的用户以及 IP 地址
答案3
只是添加到答案中,一个简单的方法来告诉你的地址(ip/域),就是通过 ssh 进入你可以 ssh 进入的计算机,退出,然后再次 ssh 回到它。大多数时候,您会看到类似以下的欢迎消息:
"Last login at xx:xxpm from you.domain.com/ip.ad.dre.ss"
答案4
通过 SSH 获取 IP 地址的最简单方法:
Command: ifconfig
例子:
stalinrajindian@ubuntuserver:~$ ifconfig
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.30.3.27 netmask 255.255.255.0 broadcast 172.30.3.255
inet6 fe80::a00:27ff:fe8b:9986 prefixlen 64 scopeid 0x20<link>
ether 08:00:27:8b:99:86 txqueuelen 1000 (Ethernet)
RX packets 4876 bytes 1951791 (1.9 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 775 bytes 73783 (73.7 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 78 bytes 5618 (5.6 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 78 bytes 5618 (5.6 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0