【问题标题】:Using SCP command to download files from Linux server to client server使用 SCP 命令将文件从 Linux 服务器下载到客户端服务器
【发布时间】:2016-02-08 19:15:09
【问题描述】:

我正在登录的 Linux 服务器上创建文件,并且我正在为用户添加将这些文件从 Linux 服务器下载到连接计算机的功能。我正在编写脚本并使用 scp 命令下载这些文件:

scp data.txt user@usraddress:/home/usr

但是,我不想将“user@usraddress:/home/usr”指定为我的计算机。我希望任何登录到 linux 服务器的人都能够下载这些文件。有没有办法获取连接计算机的地址? 我该怎么做?

如果这看起来很简单,请原谅我,我对脚本很陌生。

【问题讨论】:

    标签: linux shell download scripting scp


    【解决方案1】:

    当您在 GNU/Linux 机器中打开远程会话时,ssh 服务器会使用一些连接信息设置环境变量 SSH_CONNECTION。您可以使用此变量和$USER 变量来填充该参数:

    scp data.txt $USER@${SSH_CONNECTION%% *}:/home/$USER
    

    请注意,据我所知,您不能假设客户端主目录位于 /home。正如chepner 所说,您可以省略目标目录以使用默认位置,即主目录。

    scp data.txt $USER@${SSH_CONNECTION%% *}:
    

    【讨论】:

    • 只需使用$USER@${SSH_CONNECTION%% *}: 作为目的地。默认目录是用户的主目录。你是对的,你不能假设/home/$USER;例如,Mac OS X 默认使用/Users/$USER
    猜你喜欢
    • 2021-11-15
    • 2013-05-14
    • 2022-01-13
    • 1970-01-01
    • 1970-01-01
    • 2021-02-20
    • 1970-01-01
    • 2017-02-19
    • 2011-10-22
    相关资源
    最近更新 更多