Linux_Commands

sed替换目标文件指定内容
# sed -i s|...|...| <目标文件>
sed -i "s|^sha:.*$|sha: '<a href=\"$COMMIT_URL\">$SHORT_SHA</a>'|" ./source/_data/deploy.yml

-i 选项:
直接修改文件内容(原地编辑),而不是输出到终端。
直接覆盖原文件,建议测试时先备份文件。

s|...|...| 替换命令:

正则表达式 **^sha:.*$**


scp和远程主机互传文件
# 假设你有一个文件 `example.txt`,你想将它复制到远程主机的 `/home/user/` 目录下,可以使用以下命令:
scp example.txt user@remote_host:/home/user/

常用选项:
-r:递归复制整个目录。
-P:指定远程主机的 SSH 端口号(默认是 22)。
-p:保留文件的修改时间、访问时间和权限。
-v:显示详细的调试信息,有助于排查问题。
-C:启用压缩,可以加快传输速度。
-1:强制scp命令使用协议ssh1
-2:强制scp命令使用协议ssh2
-4:强制scp命令只使用IPv4寻址
-6:强制scp命令只使用IPv6寻址
-B:使用批处理模式(传输过程中不询问传输口令或短语)
-p:保留原文件的修改时间,访问时间和访问权限。
-q:不显示传输进度条。
-v:详细方式显示输出。
-P: port:注意是大写的P, port是指定数据传输用到的端口号
-l: limit: 限定用户所能使用的带宽,以Kbit/s为单位。
-F: ssh_config: 指定一个替代的ssh配置文件,此参数直接传递给ssh。
-i: identity_file: 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。