PHP写UltraEdit插件脚本实现方法


Posted in PHP onDecember 26, 2011

需求:

1 svn上的代码在本地(编辑器UltraEdit)有一套,在开发机(centos)上有一套,需要本地的代码修改以后上传到开发机上

2 不直接在开发机上修改和使用,原因是有多个人都使用同一个开发机,为了保留本地备份

思路:

1 写一个脚本作为UltraEdit的插件,使得代码修改后按下制定按键就能直接将代码本地保存后上传到centos上

2 本地是windows,远程是linux,文件上传工具可以使用pscp.exe,脚本语言使用PHP或者Python

3 本地必须安装PHP,不需要安装数据库和apache

4 在PHP中起一个进程调用pscp.exe, 解析路径等逻辑放在php中

步骤:

1 UltaEdit中在工具配置中设定好脚本

php "C:\Users\nickyjf\Desktop\mesh\Tools\syncFile\sync142.php" %p%n%e

后面的%p%n%e是当前编辑文件的绝对路径,作为参数传入synv142.php中

PHP写UltraEdit插件脚本实现方法

2 sync142.php代码
<?php 
//插件,将windwos文件同步到linux上 
//php "rsync142.php" %p%n%e 
//valid argv 
//testCode 
/* 
$argv = array( 
"rsync142.php", 
"E:\\SVN\\test\\www\\include\\ggg\\test\\DTest.php", 
); 
*/ 
if(count($argv) == 2) 
{ 
$sFilePath = $argv[1]; 
$sServerName = "192.168.10.142"; 
$sServerUserName = "name"; 
$sServerPassword = "password"; 
$sServerPath = sGetServerPath($sFilePath); 
$realPath = sprintf("%s@%s:/%s", $sServerUserName, $sServerName, $sServerPath); 
try 
{ 
$cmd = sprintf("pscp.exe -pw %s %s %s", $sServerPassword, $sFilePath, $realPath); 
echo $cmd."\n"; 
system($cmd); 
} 
catch(Exception $e) 
{ 
print_r($e);exit; 
} 
} 
function sGetServerPath($sWindowsPath) 
{ 
$ret = ""; 
$paths = explode("\\", $sWindowsPath); 
if($startKey = array_search("www", $paths)) 
{ 
$ret = "test/"; 
for($i=$startKey+1; $i<count($paths); $i++) 
{ 
$ret .= $paths[$i] . "/"; 
} 
$ret = trim($ret, "/"); 
} 
return $ret; 
} 
?>

3 将pscp.exe放在sync142同级目录下
PHP写UltraEdit插件脚本实现方法
 
4 将按键Ctrl + 1 映射到这个脚本
于是在编写程序的时候只要按下Ctrl + 1就可以将当前脚本替换远程脚本
PHP写UltraEdit插件脚本实现方法
PHP 相关文章推荐
php抓即时股票信息
Oct 09 PHP
附件名前加网站名
Mar 23 PHP
php利用iframe实现无刷新文件上传功能的代码
Sep 29 PHP
PHP大批量插入数据库的3种方法和速度对比
Jul 08 PHP
php实现上传图片保存到数据库的方法
Feb 11 PHP
php命令行(cli)下执行PHP脚本文件的相对路径的问题解决方法
May 25 PHP
thinkPHP实现MemCache分布式缓存功能
Mar 23 PHP
CI框架整合smarty步骤详解
May 19 PHP
PHP实现可精确验证身份证号码的工具类示例
May 31 PHP
laradock环境docker-compose操作详解
Jul 29 PHP
浅谈laravel 5.6 安装 windows上使用composer的安装过程
Oct 18 PHP
PHP var关键字相关原理及使用实例解析
Jul 11 PHP
url decode problem 解决方法
Dec 26 #PHP
最新用php获取谷歌PR值算法,附上php查询PR值代码示例
Dec 25 #PHP
匹配csdn用户数据库与官方用户的重合度并将重叠部分的用户筛选出来
Dec 25 #PHP
php操作JSON格式数据的实现代码
Dec 24 #PHP
php文件怎么打开 如何执行php文件
Dec 21 #PHP
使用JSON实现数据的跨域传输的php代码
Dec 20 #PHP
php自动注册登录验证机制实现代码
Dec 20 #PHP
You might like
五个PHP程序员工具
2008/05/26 PHP
PHP 变量类型的强制转换
2009/10/23 PHP
基于PHP 面向对象之成员方法详解
2013/05/04 PHP
19个超实用的PHP代码片段
2014/03/14 PHP
浅谈mysql_query()函数的返回值问题
2016/09/05 PHP
Yii框架使用魔术方法实现跨文件调用功能示例
2017/05/20 PHP
php5.3/5.4/5.5/5.6/7常见新增特性汇总整理
2020/02/27 PHP
Yii使用EasyWechat实现小程序获取用户的openID的方法
2020/04/29 PHP
javascript动画效果类封装代码
2007/08/28 Javascript
js正确获取元素样式详解
2009/08/07 Javascript
jquery中子元素和后代元素的区别示例介绍
2014/04/02 Javascript
JQuery给select添加/删除节点的实现代码
2016/04/26 Javascript
jQuery扩展_动力节点Java学院整理
2017/07/05 jQuery
angular第三方包开发整理(小结)
2018/04/19 Javascript
jQuery中ajax请求后台返回json数据并渲染HTML的方法
2018/08/08 jQuery
Vue组件模板及组件互相引用代码实例
2020/03/11 Javascript
javascript 函数的暂停和恢复实例详解
2020/04/25 Javascript
[00:48]完美“圣”典2016风云人物:xiao8宣传片
2016/11/30 DOTA
实现python版本的按任意键继续/退出
2016/09/26 Python
Python三级目录展示的实现方法
2016/09/28 Python
Python读取stdin方法实例
2019/05/24 Python
解决Python3.8用pip安装turtle-0.0.2出现错误问题
2020/02/11 Python
python3.7中安装paddleocr及paddlepaddle包的多种方法
2020/11/27 Python
分享30个新鲜的CSS3打造的精美绚丽效果(附演示下载)
2012/12/28 HTML / CSS
火山动力Java笔试题
2014/06/26 面试题
展会邀请函范文
2014/01/26 职场文书
客服专员岗位职责
2014/02/28 职场文书
英语专业职业生涯规划范文
2014/03/05 职场文书
低碳生活倡议书
2014/04/14 职场文书
2014年行政后勤工作总结
2014/12/06 职场文书
逃课检讨书
2015/01/26 职场文书
汽车销售员岗位职责
2015/04/11 职场文书
初中政治教学反思
2016/02/23 职场文书
2016最新离婚协议书范本及程序
2016/03/18 职场文书
go select编译期的优化处理逻辑使用场景分析
2021/06/28 Golang
mysql left join快速转inner join的过程
2021/06/30 MySQL