您现在的位置是:网站首页> 编程资料编程资料
Shell中使用scp命令实现文件上传代码_linux shell_
2023-05-26
454人已围观
简介 Shell中使用scp命令实现文件上传代码_linux shell_
自从法现 SSH 可以执行远端命令后,ftp 软件也渐渐很少用了。
每次更新服务器代码,都要打包、上传、登录到服务器修改文件权限、更新 Cache 等等,又慢又容易出错,所以做成脚本,一次帮我搞定,自己就点上一根烟坐在电脑面前发呆,要么就玩会儿《植物大战僵尸》啥的,悠闲!
PS: Ant 以及 Phing 用户,你们可以无视了… 我只是喜欢玩 Shell 而已。
复制代码 代码如下:
#!/bin/sh
HOME='/cygdrive/d/public_html/myproject'
## 先打包本地代码
## 排除如下文件: *.svn, *.bat, upload.sh, cache
## 如果需要 exclude 的文件很多,可以使用参数 --exclude-from=FILE
## 将文件一行行写入 FILE 中
cd $HOME
tar jcf tmp.tar.bz2 * \
--exclude=*.bat \
--exclude=*.bz2 \
--exclude=*.gz \
--exclude=.svn \
--exclude=cache \
--exclude=upload.sh \
## 通过 SCP 上传文件
scp tmp.tar.bz2 user@your.host.com:/home/public_html/myproject/tmp.tar.bz2
## 执行远程 ssh 命令
## 这里执行了另外一个脚本 load.sh
ssh user@your.host.com
"
cd /home/public_html/myproject
tar jxf tmp.tar.bz2
chown -R web:web *
chmod -R 755 *
sh load.sh
rm -f tmp.tar.bz2
"
## 删除本地文件
rm -f tmp.tar.bz2
echo "Everything is done."
# 星期一 一月 11, 2010 by Verdana
# vim: set expandtab tabstop=4 shiftwidth=4:
SSH 我配置成了自动登录,可以参考这里。
您可能感兴趣的文章:
相关内容
- Putty实现自动登陆远程Linux主机的方法_linux shell_
- Shell脚本实现启动PHP内置FastCGI Server_linux shell_
- 在 Shell 提示符中显示 Git 分支名称的方法_linux shell_
- Bash Shell中忽略大小写的设置方法_linux shell_
- shell脚本实现随机生成10个8位密码_linux shell_
- Linux shell脚本实现CPU预警_linux shell_
- Linux shell实现每天定时备份mysql数据库_linux shell_
- linux shell实现守护进程脚本_linux shell_
- Linux Shell脚本实现检测tomcat_linux shell_
- shell版Nginx日志蜘蛛爬取查看脚本_linux shell_
