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写的采集程序
Mar 16 PHP
在PHP里得到前天和昨天的日期的代码
Aug 16 PHP
通过PHP CLI实现简单的数据库实时监控调度
Jul 01 PHP
PHPLog php 程序调试追踪工具
Sep 09 PHP
Yii PHP Framework实用入门教程(详细介绍)
Jun 18 PHP
PHP仿博客园 个人博客(2) 数据库增添改删
Jul 05 PHP
详解PHP中的PDO类
Jul 06 PHP
配置eAccelerator和XCache扩展来加速PHP程序的执行
Dec 22 PHP
php微信公众号开发(4)php实现自定义关键字回复
Dec 15 PHP
PHP开发中解决并发问题的几种实现方法分析
Nov 13 PHP
PHP实现Redis单据锁以及防止并发重复写入
Apr 10 PHP
对laravel的session获取与存取方法详解
Oct 08 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
从一个不错的留言本弄的mysql数据库操作类
2007/09/02 PHP
PHP5.3以上版本安装ZendOptimizer扩展
2015/03/27 PHP
隐性调用php程序的方法
2015/06/13 PHP
laravel实现批量更新多条记录的方法示例
2017/10/22 PHP
PHP实现的多维数组排序算法分析
2018/02/10 PHP
Javascript base64编码实现代码
2011/12/02 Javascript
详细解读JavaScript编程中的Promise使用
2015/07/27 Javascript
jquery实现仿JqueryUi可拖动的DIV实例
2015/07/31 Javascript
js中作用域的实例解析
2017/03/16 Javascript
微信小程序 配置顶部导航条标题颜色的实现方法
2017/09/20 Javascript
Vue from-validate 表单验证的示例代码
2017/09/26 Javascript
解析vue中的$mount
2017/12/21 Javascript
js获取html页面代码中图片地址的实现代码
2018/03/05 Javascript
解决vue路由后界面没有变化,但是链接有的问题
2018/09/01 Javascript
JS二级菜单不同实现方法分析【4种方法】
2018/12/21 Javascript
vue中v-show和v-if的异同及v-show用法
2019/06/06 Javascript
vue实现禁止浏览器记住密码功能的示例代码
2021/02/03 Vue.js
[01:04]不如跳舞!DOTA2新英雄玛尔斯的欢乐日常
2019/03/11 DOTA
深入理解Python中变量赋值的问题
2017/01/12 Python
Django学习笔记之Class-Based-View
2017/02/15 Python
python之PyMongo使用总结
2017/05/26 Python
Win10+GPU版Pytorch1.1安装的安装步骤
2019/09/27 Python
tensorflow安装成功import tensorflow 出现问题
2020/04/16 Python
Pandas的Apply函数具体使用
2020/07/21 Python
python爬取招聘要求等信息实例
2020/11/20 Python
手把手教你实现一个canvas智绘画板的方法
2019/03/04 HTML / CSS
印度最大的时尚购物网站:Myntra
2018/09/13 全球购物
英国川宁茶官方网站:Twinings茶
2019/05/21 全球购物
教师党员思想汇报
2014/01/06 职场文书
学习委员自我鉴定
2014/01/13 职场文书
2014年银行客户经理工作总结
2014/11/12 职场文书
居委会工作总结2015
2015/05/18 职场文书
心理学培训心得体会
2016/01/22 职场文书
再读《皇帝的新衣》的读后感悟!
2019/08/07 职场文书
Python Pytorch查询图像的特征从集合或数据库中查找图像
2022/04/09 Python
Windows server 2012搭建FTP服务器
2022/04/29 Servers