#!/bin/bash
# 指定需要获取文件的服务器 IP 地址和用户名
SERVER_IP="server_ip_address"
USERNAME="your_username"
# 指定需要获取的文件路径及名称
REMOTE_PATH="/path/to/remote/file"
LOCAL_PATH="/path/to/local/file"
# 通过 ssh 命令从服务器获取文件到本地
ssh ${USERNAME}@${SERVER_IP} "cat ${REMOTE_PATH}" > ${LOCAL_PATH}
# 获取文件名的后缀,判断是否为需要的文件
FILE_EXTENSION="${LOCAL_PATH##*.}"
if [ "${FILE_EXTENSION}" = "your_extension" ]; then
echo "这是需要的文件"
else
echo "这不是需要的文件"
fi
在脚本中,你需要将 SERVER_IP
和 USERNAME
更改为你自己的服务器 IP 地址和用户名;REMOTE_PATH 和 LOCAL_PATH 更改为你需要获取的文件路径和本地保存文件的路径。 最后,在 if 语句中,你需要将 “your_extension” 更改为你需要的文件名后缀.
${LOCAL_PATH##*.}
表示从字符串变量 $LOCAL_PATH
的结尾开始,删除最长匹配 .(即 . 之前的所有字符),返回剩余的部分,也就是文件名的后缀。这里的 # 表示删除前缀,. 表示匹配任意字符和一个点号,## 表示删除最长匹配的前缀。
例如,如果 $LOCAL_PATH 是 /path/to/file.txt,那么 ${LOCAL_PATH##*.} 将返回 txt。这个后缀可以用来判断文件类型或者进行其他操作。