美文网首页
在linux虚拟机快捷复制文件脚本

在linux虚拟机快捷复制文件脚本

作者: 孤独的根号十二 | 来源:发表于2023-08-11 14:41 被阅读0次

    bcp.sh test.txt root ip

    #!/bin/bash
    
    # 检查命令行参数
    if [ "$#" -lt 3 ]; then
      echo "使用方法: $0 /path/to/file"
      exit 1
    fi
    
    # 源文件相对路径
    SOURCE_FILE="$1"
    
    # 获取源文件的完整路径
    FULL_SOURCE_PATH=$(realpath ${SOURCE_FILE})
    echo FULL_SOURCE_PATH = ${FULL_SOURCE_PATH}
    
    # 目标服务器的用户名和地址
    TARGET_USER=$2
    TARGET_HOST=$3
    
    # 目标目录
    TARGET_DIR=$(dirname ${FULL_SOURCE_PATH})
    
    echo TARGET_DIR = ${TARGET_DIR}
    
    # 远程执行命令来检查目录是否存在,如果不存在则创建它
    ssh ${TARGET_USER}@${TARGET_HOST} "
      if [ ! -d ${TARGET_DIR} ]; then
        sudo mkdir -p ${TARGET_DIR}
        sudo chmod 755 ${TARGET_DIR}
        sudo chown root:root ${TARGET_DIR}
      fi
    "
    
    # 使用scp拷贝文件到远程服务器的目标目录
    scp ${FULL_SOURCE_PATH} ${TARGET_USER}@${TARGET_HOST}:${TARGET_DIR}
    
    echo "文件拷贝完成"
    

    相关文章

      网友评论

          本文标题:在linux虚拟机快捷复制文件脚本

          本文链接:https://www.haomeiwen.com/subject/cnstmdtx.html