`
wuneng94zui
  • 浏览: 34383 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
收藏列表
标题 标签 来源
git
git config --global credential.helper store
kafkaOffsetMonitor
java -cp kafkaOffsetMonitor-assembly-1.0.jar com.quantifind.kafka.offsetapp.OffsetGetterWeb --offsetStorage trident --stormZKOffsetBase /transactional --zk hyj1:2181 --trident_zk hyj1:2181 --port 7000 --refresh 10.seconds --retain 1.days
shell
获取ip地址
netip=`ifconfig eth0 | grep "inet addr" | cut -d ":" -f 2 | cut -d " " -f 1 `
echo $netid
netip=`ifconfig | awk -F'addr:|Bcast' '/Bcast/{print $2}' `
netip=`hostname -i`

#!/bin/bash
BASEDIR=/export/App/bmncollector.m.jd.local
FEATURE=com.jd.app.pat.log.server.LogServer
ports=(${port1} ${port2} ${port3})
for port in ${ports[@]}
do
	exist=$(ps -ef | grep $FEATURE | grep $port | grep -v 'grep'| awk '{print $2}')
	if [ "$exist" != "" ];then
		echo "port: $port is already on pid: $exist; please stop it first!"
		continue
	fi
	setsid java -cp $CLASSPATH:/export/App/bmncollector.m.jd.local/config -server -Xms4096m -Xmx4096m -XX:MaxPermSize=1024m -XX:+UseParallelGC -XX:+UseParallelOldGC -DinstanceId=$port -Djava.ext.dirs=$BASEDIR/lib $FEATURE $port &
	usleep 100000
	exist=$(ps -ef | grep $FEATURE | grep $port | grep -v 'grep'| awk '{print $2}')
	if [ "$exist" != "" ];then
		echo "port: $port startup success on pid: $exist"
	else
		echo "port: $port startup failed."
	fi
done
Python
 nohup $JSTORM_HOME/bin/jstorm $PROCESS >/dev/null 2>&1 &

>是输出重定向
/dev/null是系统黑洞,丢啥都行,不会满
2其实就是文件描述符,默认是0是标准输入,1是标准输出,2是标准错误。
>实际上是1>/dev/null的简写
2>&1表示把标准错误重定向到标准输出
最后一个&表示后台执行,可以通过jobs,fg,bg,Cntl+Z进行调度

nohup java -Xms512M -Xmx512M -Xmn256M -XX:PermSize=128m -XX:MaxPermSize=256m -cp /public/dcm/server3/DcmServer.jar dcm.DcmSystem >> nohup.out  &

ps -ef|grep monitor_psr.sh|grep iboss2|grep ismp|grep -v grep|awk '{print $2}'|xargs kill -9
注*
A.  $2表示第2列,即进程号PID; awk很强大,这里不再详细介绍;
B.  grep -v grep是列出除开grep命令本身的进程,grep iboss2确认进程关键字
C.  kill -9 强杀进程;
D.  xargs 使用上一个操作的结果作为下一个命令的参数使用
本来就是针对字符的操作,无需使用XAGRS,直接管道即可.对于不是对字符进行操作的才需要用xargs
例如:
ps -ef|grep mm|xargs wc -l  (WRONG)
ps -ef|grep mm|wc -l        (RIGHT)
E.  grep ismp加这个为了更加保险,确实此进程是ismp这个UNIX USER建立的进程,避免误杀进程;
对打开这个进程的用户ismp再进行一次搜索过滤,避免把别的用户的进程杀掉了

获取本机ip地址
#!/usr/bin/python
import socket
myname = socket.getfqdn(socket.gethostname(  ))
myaddr = socket.gethostbyname(myname)
#print myname
print myaddr
ambari重装删除脚本
#!/bin/bash

rm -rf /etc/hadoop
rm -rf /etc/hbase
rm -rf /etc/zookeeper
rm -rf /var/run/hadoop
rm -rf /var/run/hbase
rm -rf /var/run/zookeeper
rm -rf /var/log/hadoop
rm -rf /var/log/hbase
rm -rf /var/log/zookeeper
rm -rf /usr/lib/flume
rm -rf /usr/lib/storm
rm -rf /var/lib/hadoop-hdfs
rm -rf /var/lib/hadoop-yarn
rm -rf /var/lib/hadoop-mapreduce
rm -rf /hadoop/hbase
rm -rf /hadoop/zookeeper
rm -rf /hadoop/hdfs
rm -rf /etc/hive
rm -rf /etc/storm
rm -rf /etc/hive-hcatalog
rm -rf /etc/tez
rm -rf /etc/hive-webhcat
rm -rf /etc/slider
rm -rf /etc/storm-slider-client
rm -rf /var/run/hive
rm -rf /var/run/storm
rm -rf /var/run/webhcat
rm -rf /var/run/hadoop-yarn
rm -rf /var/run/hadoop-mapreduce
rm -rf /var/log/hive
rm -rf /var/log/storm
rm -rf /var/log/hadoop-yarn
rm -rf /var/log/hadoop-mapreduce
rm -rf /var/lib/hive
rm -rf /hadoop/storm

userdel -rf hive
userdel -rf mapred
userdel -rf hbase
userdel -rf ambari-qa
userdel -rf zookeeper
userdel -rf tez
userdel -rf hdfs
userdel -rf storm
userdel -rf yarn
userdel -rf hcat
userdel -rf ams
storm使用
storm jar storm-starter-topologies-0.10.0.jar storm.starter.WordCountTopology WordCount -c nimbus.host=hyj3
Redis命令简明示例 http://www.2cto.com/database/201412/365782.html

        
redis
telnet 192.168.144.66 6379

set mykey "this is a test"
+OK
get mykey
$14
this is a test
strlen mykey
:14
append mykey "hello"
:19
get mykey
$19
this is a testhello
kafka
bin/kafka-topics.sh --zookeeper hyj1:2181/ --alter --topic newgateway_log_1 --partitions 50
hive与hbase
//hive创建hbase外部表,访问hbase中的表
create external table hive_ambarismoketest (key string,family map<string,string>) 
STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' 
WITH SERDEPROPERTIES ("hbase.columns.mapping" ="family:")  
TBLPROPERTIES  ("hbase.table.name" = "ambarismoketest");
//查询表中数据
select * from hive_ambarismoketest;
//查询列族中列数据
select family['col01'] from hive_ambarismoketest;
//扫描一行的多版本
get 'versiona','$HBASE_STATE_GLOBAL$',{COLUMN=>'x:x',TIMERANGE=>[1449993600000,1459997200000],VERSIONS=>1440}
//创建表
create 'minute-functionid-client-version', {NAME => 'x', VERSIONS => '525600'}

mdata表中,只put了一天的数据量,从2015-12-15 17:01:00 到 2015-12-16 17:00:00
1.所有function的数据
rowkey: '1functionids'
get 'mdata','1functionids'  --每个function的最新总访问量
-------------------------------------------------------
2.每个client的数据
rowkey: 'function0'
get 'mdata','functionid0',{TIMERANGE=>[1449993600000,1459997200000],VERSIONS=>10}    --function每个client的总访问量
--------------------------------------------------------
3.每个client版本的数据
get 'versionb','[order, m]',{TIMERANGE=>[1449993600000,145999720000000],VERSIONS=>10}
  --function每个client的每个版本的总访问量
--------------------------------------------------------
maven打出依赖jar包 mvn
mvn dependency:copy-dependencies -DoutputDirectory=lib
注册码 注册码
idea15:    注册方法: 只是在注册时选择 License server 填 http://idea.lanyus.com 点击 OK;
idea2016:  http://idea.qinxi1992.cn    
wmware12:  5A02H-AU243-TZJ49-GTC7K-3C61N
SecureCRT 7 序列号:
           Name: hyj
           Company: jd 
           Serial Number:03-50-306303
           License Key: ADZVM2 AKTJKQ Y7BMG3 S9587X AA7AG1 SWEWEK FZ79AN HUEMHH  
           Issue Date: 12-06-2015 
IntelliJ IDEA 2017破解方法
在激活的时候选择 license server;
输入如下地址激活:
http://idea.imsxm.com
http代理
172.17.36.127
std_squid
std_1qaz@WSX
mvn mvn Maven实战(二)构建简单Maven项目
mvn archetype:generate 
-DgroupId=com.mycompany.app 
-DartifactId=my-app-simple
 -Dversion=1.0 
-DarchetypeArtifactId=maven-archetype-quickstart

cmd命令 cmd
netstat -aon|findstr "80"  //查看80端口占用
tasklist|findstr "7136"    //查看进程编号名称
taskkill /pid 7136         //结束进程
taskkill /im avp.exe
jQuery.js js
//响应浏览器关闭刷新事件    
jQuery(document).ready(function(){ jQuery(window).bind("beforeunload",function(){
	var n = window.event.screenX - window.screenLeft;
	var b = n > document.documentElement.scrollWidth-20;
	if(b && window.event.clientY < 0 || window.event.altKey) {
		window.event.returnValue="是关闭而非刷新,确认退出吗?";
	} else{
		alert("是刷新而非关闭");
	}
}); });
win7 win7
Aero被不小心关掉了,开起win7 Aero特效方法:打开Win7开始菜单,在开始搜索框中输入 aero, 选择查找并修复透明和其他视觉效果存在的问题
win7变成无线路由器:1. 以管理员身份运行命令提示符,输入netsh wlan set hostednetwork mode=allow ssid="W7AP" key=helloworld 2.启动服务里的Windows Firewall 3.本地连接>属性>共享,选择'允许其他网络用户通过此计算机Internet连接',在这里选我们新建的虚拟网卡'无线网络连接2'4.netsh wlan start hostednetwork
httptail http://gw.m.360buy.com/tomcatlog/catalina.out >log.txt 查看日志方法
sql常用 sql
set   statistics io  on   --设置统计表逻辑扫描数

sqlserver增加表及字段的说明信息: 命令:EXEC sys.sp_addextendedproperty @name=N'MS_Description', @value=N'自增id' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'logs', @level2type=N'COLUMN',@level2name=N'id' 菜单:可以在字段|属性|扩展属性|中添加

SQL Server 尝试打开或创建物理文件 'D:\project\DataBase\afs.mdf' 时, CREATE FILE 遇到操作系统错误 5(拒绝访问。)。解决方法:1.右键afs.mdf文件属性|安全|继续|给当前用户添加完全控制的权限,日志文件afs_log.ldf也要设置权限。2.在查询分析器中以sa身份登陆附加即可。
IE9 把地址栏和标签栏放在同一行 ie9
通过工具栏右键菜单,把标签栏独立成一行进行布局排放
测试url注入 java
http://localhost:9080/questionnaireSurvey/categoryShowByTelecommunications.view?
caseId=9566403&orderId=94331187&createTime=2011-10-17 17:13:10</br>username<input type="text">password<input type="password"><script>alert(110)</script>
excel命令 excel
="<dependency><groupId>"&A1&"</groupId><artifactId>"&D1&"</artifactId><version>"&G1&"</version></dependency>"
用&连接,用""表示单个双引号
maven中引用自已写的jar包 maven
1.安装自定义jar包到maven库的命令
cd E:\projects\questionSub\lib
mvn install:install-file -DgroupId=com.jd.crm -DartifactId=crm-common  -Dversion=1.0 -Dpackaging=jar -Dfile=crm-common-1.0-SNAPSHOT.jar
mvn install:install-file -DgroupId=com.jd.crm -DartifactId=crm-dao     -Dversion=1.0 -Dpackaging=jar -Dfile=crm-dao-1.0-SNAPSHOT.jar
mvn install:install-file -DgroupId=com.jd.crm -DartifactId=crm-domain  -Dversion=1.0 -Dpackaging=jar -Dfile=crm-domain-1.0-SNAPSHOT.jar
mvn install:install-file -DgroupId=com.jd.crm -DartifactId=crm-service -Dversion=1.0 -Dpackaging=jar -Dfile=crm-service-1.0-SNAPSHOT.jar
mvn install:install-file -DgroupId=com.jd.crm -DartifactId=crm-manager -Dversion=1.0 -Dpackaging=jar -Dfile=crm-manager-1.0-SNAPSHOT.jar
mvn install:install-file -DgroupId=com.jd.crm -DartifactId=crm-order   -Dversion=1.0 -Dpackaging=jar -Dfile=order-client-1.1.1.jar
插件设置 eclipse
eclipse:
svn:    http://subclipse.tigris.org/update
adt:    https://dl-ssl.google.com/android/eclipse/
jdk:    window菜单/preferences/java/installedJres
tomcat: window菜单/preferences/tomcat/tomcat home directory
path:   .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\bin;
font    window-preferences-General->Appearance->Colors and Fonts,打开basic,双击Test Font, 微软雅黑   不是@微软雅黑 
CheckStyle: http://eclipse-cs.sourceforge.net/update
sonar: http://sonar4eclipse.googlecode.com/svn/trunk/org.sonar.ide.eclipse.update/

tomcat:
tomcat点start启动一闪就没了,可以在start.bat最后一行加上pause来查看错误,如果是java_home问题,可重新安装jdk并指定java_home

intellij:
maven: file菜单/settings/maven/添加maven home
jre:   项目右键/module settings/sdks/添加jdk home
file encoding:  gbk
tomecat: gbk
compiler/java compiler/-target 1.6

要编译运行一个.java文件的环境变量配置: (JAVA_HOME: D:\Java\jdk1.6.0_18) (CLASSPATH: .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar (第一个.表示当前的路径) (PATH: ;%JAVA_HOME%\bin) (注意:.java文件中不要加package,使用java命令运行时不要加.class扩展名,会导致报错)

【Ctrl+Shift+G】 Eclipse 查找类、方法和属性的引用的快捷键。

怎样设置豆沙色保护眼睛? 将色调(E)、饱和度(S)、亮度(L)分别设置为85、120、205
拦截404/500错误 xml
web.xml中增加如下:

<error-page>
   <error-code>404</error-code>
	<location>/login.html</location>
</error-page>
<error-page>
	<error-code>500</error-code>
	<location>/login.html</location>
</error-page>
url字符编码 regex
[%7C|%3B|%24|%40|%27|%22|%3C|%3E|%28|%29|%2B|%2C|%5C|%23]
[|  |;  |$  |@  |'  |"  |<  |>  |(  |  )|+  |,  |\  |#  ]
[||;|$|@|'|"|<|>|(|)|+|,|\|#]

过滤所有url特殊字符,防sql注入及脚本注入
[|;$@'\"<>()+,\\\\#]|%7C|%3B|%24|%40|%27|%22|%3C|%3E|%28|%29|%2B|%2C|%5C|%23
生成cxf客户端命令 cxf
D:\XiaoI\apache-cxf-2.3.0\bin>wsdl2java -p com.questionnaire.service.webservicec
lient.order -d D:\aaa  -autoNameResolution  http://localhost:8080/services/crmOr
der?wsdl
StringUtils.java java
    public static void main(String[] args) {
        String str = "武汉市u洪j。山区 HuaZhos无可奈jhkk何花落去 大幅度,,nojgy College j武j昌jjjjjj分校jj。jkl";
        URLEncoder.encode(addressChinese,"utf8"); //汉字编码
        int byteLength = length(str);
        char[] c = str.toCharArray();
        int charslength = getCharsLength(c, 12);
        System.out.println("getcharlength:" + charslength + "|charat" + str.charAt(charslength - 1));
        int sublength = 50;
        int subbegin = byteLength - sublength;
        System.out.println("source:" + str + "|byteLength:" + byteLength + "|lenth:" + str.length() + "|subbegin:" + subbegin + "|sublength:" + sublength);
        String substr2 = substring(str, subbegin, sublength);
        System.out.println("------" + substr2 + "--------" + length(substr2));
    }

    public static String trims(String s) {
        if (s == null) {
            return "";
        } else {
            String t = s.replaceAll("^([\\s ])+|([\\s ])+$", "");
            return t;
        }
    }

    public static Boolean isBlank(String s) {
        if (s == null || trims(s).equals("")) {
            return true;
        } else {
            return false;
        }
    }

    public static boolean isNumeric(String str) {
        Pattern pattern = Pattern.compile("[0-9]+");
        return pattern.matcher(str).matches();
    }

    public static int length(String s) {
		if (str != null) {
			return str.getBytes().length;
		}
		return 0;
    }

    public static String substring(String str, int srcPos, int specialCharsLength) {
        if (str == null || "".equals(str) || specialCharsLength < 1) {
            return "";
        }
        if (srcPos < 0) {
            srcPos = 0;
        }
        if (specialCharsLength <= 0) {
            return "";
        }
        char[] chars = str.toCharArray();
        if (srcPos > chars.length) {
            return "";
        }
        int begin = getCharsLength(chars, srcPos);//todo:add
        str = str.substring(begin);
        chars = str.toCharArray();

        int charsLength = getCharsLength(chars, specialCharsLength);
        return new String(chars, 0, charsLength);
    }

    private static int getCharsLength(char[] chars, int specialCharsLength) {
        int count = 0;
        int normalCharsLength = 0;
        for (int i = 0; i < chars.length; i++) {
            int specialCharLength = getSpecialCharLength(chars[i]);
            if (count <= specialCharsLength - specialCharLength) {
                count += specialCharLength;
                normalCharsLength++;
            } else {
                break;
            }
        }
        return normalCharsLength;
    }

    private static int getSpecialCharLength(char c) {
        if (isLetter(c)) {
            return 1;
        } else {
            return 2;
        }
    }

    public static boolean isLetter(char c) {
        int k = 0x80;
        return c / k == 0 ? true : false;
    }

//unicode编码解码
        String t= UnicodeUtil.toUnicode("我",true);
         String s= new UnicodeUtil().fromUnicode("\\u6211".toCharArray(),0,"\\u6211".length()-1,"".toCharArray()) ;

    public static String formatUrl(String url){
        if(url!=null){
            return url.replaceAll("\"","%22").replaceAll("\\{","%7B").replaceAll("}","%7D").replaceAll("\\[","%5B").replaceAll("]","%5D");
        }
        return "";
    }

css.css css
div#example span { float : left;white-space:nowrap;margin-left:0;}  //当前行若放不下,则自动换行

.jdDiaoca{width:720px;margin:0 auto;background:url(../images/diaocha_12.jpg) #fff repeat-y left;}
.jdDiaoca h2{width:720px;height:98px;background:url(../images/diaocha_05.jpg) repeat-x top;overflow:hidden;}

#header .objectsoft{
    position: absolute;
	left:160px;
	top:56px;
}
#header{
	height:107px;
	background: url(../images/headerBG.png) repeat-x 0 0;
	font-family:"微软雅黑",sans-serif;
}
StringUtils.js js
//重定义系统函数
String.prototype.trim = function () {
	if (this === undefined || this === null || this === "") {
		return "";
	} else {
		return this.replace(/^\s*|\s*$/g, "");
	}
};
[(].+[)]$ //匹配任意字符

//替换 url编码//表示只替换第一个,//g表示替换所有
encodeURI(videoUrl.replace(/\\/g,"/"));

function getStringByteLength(strTemp) {
	var i, sum;
	sum = 0;
	for (i = 0; i < strTemp.length; i = i + 1) {
		if ((strTemp.charCodeAt(i) >= 0) && (strTemp.charCodeAt(i) <= 255)) {
			sum = sum + 1;
		} else {
			sum = sum + 2;
		}
	}
	return sum;
}

function isNumber( str){
	if(/^[0-9]+$/g.test(str)){
		return true;
	}else{
		return false;
	}
}

function replaceAllSpaceToPlus(parameter){
    parameter=  parameter.replace(/[\s*]/g, "+");
    return parameter;
}

function saveStorage()
{
    var data = new Object; //对象使用
    data.name = document.getElementById('name').value;
    data.email = document.getElementById('email').value;
    data.tel = document.getElementById('tel').value;
    data.memo = document.getElementById('memo').value;
    var str = JSON.stringify(data); //json使用
    localStorage.setItem(data.name,str); //webStorage使用
}
function findStorage(id)
{
    var find = document.getElementById('find').value;
    var str = localStorage.getItem(find);
    var data =  JSON.parse(str); //json使用
}
 
var db = openDatabase('MyData', '', 'My Database', 102400);  //创建数据库对象 名称 版本号 描述 大小

function removeAllData()
{  
    for (var i =datatable.childNodes.length-1; i>=0; i--) //table的长度
    {  
        datatable.removeChild(datatable.childNodes[i]);  
    }  
    var tr = document.createElement('tr');  //创建tr子元素
    var th1 = document.createElement('th');  
    var th2 = document.createElement('th');  
    var th3 = document.createElement('th');  
    th1.innerHTML = '姓名';  
    th2.innerHTML = '留言';  
    th3.innerHTML = '时间';  
    tr.appendChild(th1);  
    tr.appendChild(th2);  
    tr.appendChild(th3);  
    datatable.appendChild(tr);  //添加tr子元素
}  
function showData(row) 
{  
    var tr = document.createElement('tr');  
    var td1 = document.createElement('td');  
    td1.innerHTML = row.name;  
    var td2 = document.createElement('td');  
    td2.innerHTML = row.message;  
    var td3 = document.createElement('td');  
    var t = new Date();  
    t.setTime(row.time);  //时间戳转时间
    td3.innerHTML=t.toLocaleDateString()+" "+t.toLocaleTimeString();  
    tr.appendChild(td1);  
    tr.appendChild(td2);  
    tr.appendChild(td3);  
    datatable.appendChild(tr);    
}  
function showAllData() 
{  
    db.transaction(function(tx) //执行数据库事务 sql
    {  
        tx.executeSql('CREATE TABLE IF NOT EXISTS MsgData(name TEXT, message TEXT, time INTEGER)',[]);  
        tx.executeSql('SELECT * FROM MsgData', [], function(tx, rs) 
        {  
            removeAllData();  
            for(var i = 0; i < rs.rows.length; i++) 
            {  
                showData(rs.rows.item(i));  
            }  
        });  
    });  
}  
function addData(name, message, time) 
{  

    db.transaction(function(tx) 
    {  
        tx.executeSql('INSERT INTO MsgData VALUES(?, ?, ?)',[name, message, time],function(tx, rs) 
        {  
            alert("成功保存数据!");  
        },  
        function(tx, error) 
        {  
            alert(error.source + "::" + error.message);  
        });  
    });  
}  

//跨域通信示例
//发送端
<script type="text/javascript">
// (1) 监听message事件
window.addEventListener("message", function(ev) {
  // (2) 忽略指定URL地址之外的页面传过来的消息
  if (ev.origin != "http://testcrm.360buy.com:8080") {
    return;
  }
  // (3) 显示消息
  alert("从"+ev.origin + "那里传过来的消息:\n\"" + ev.data + "\"");
}, false);
function hello()
{
  var iframe = window.frames[0];
  // (4) 传递消息
  iframe.postMessage("你好", "http://testcrm.360buy.com:8080/receive.html");
}
</script>
</head>
<body>
<h1>跨域通信示例</h1>
<iframe width="400" src="http://testcrm.360buy.com:8080/receive.html" onload="hello()" >
</iframe>
//接收端
window.addEventListener("message", function(ev) 
{
    if (ev.origin != "http://questionsub.360buy.com:7080")
    {
        return;
    }
    document.body.innerHTML = "从"+ev.origin + "那里传来的消息。<br>\""+ ev.data + "\"";
    // (5) 向主页面发送消息
    ev.source.postMessage("你好。这里是" + this.location, ev.origin);
}, false);
//worker.js 线程内容
onmessage=function(event){
    var intArray=new Array(100);    //随机数组
    //生成100个随机数
    for(var i=0;i<100;i++)
        intArray[i]=parseInt(Math.random()*100); //随机数 转换整数
    //创建子线程
    var worker=new Worker("worker2.js");
    //把随机数组提交给子线程进行挑选工作
    worker.postMessage(JSON.stringify(intArray));
    worker.onmessage = function(event) {
        //把挑选结果返回主页面
        postMessage(event.data);
    }
}
   
//js日期格式化
    Date.prototype.format = function(format)
    {
        var o =
        {
            "M+" : this.getMonth()+1, //month
            "d+" : this.getDate(),    //day
            "h+" : this.getHours(),   //hour
            "m+" : this.getMinutes(), //minute
            "s+" : this.getSeconds(), //second
            "q+" : Math.floor((this.getMonth()+3)/3),  //quarter
            "S" : this.getMilliseconds() //millisecond
        }
        if(/(y+)/.test(format))
        format=format.replace(RegExp.$1,(this.getFullYear()+"").substr(4 - RegExp.$1.length));
        for(var k in o)
        if(new RegExp("("+ k +")").test(format))
        format = format.replace(RegExp.$1,RegExp.$1.length==1 ? o[k] : ("00"+ o[k]).substr((""+ o[k]).length));
        return format;
    }

    function UtcToDate(num){
        num+="";
      if(num.split(" ").length<6){return num;}
        var month = new Array();
        month["Jan"] = "01"; month["Feb"] = "02"; month["Mar"] = "03"; month["Apr"] = "04"; month["May"] = "05"; month["Jun"] = "06";
        month["Jul"] = "07"; month["Aug"] = "08"; month["Sep"] = "09"; month["Oct"] = "10"; month["Nov"] = "11"; month["Dec"] = "12";
        str = num.split(" ");
        var date = str[5] ;
        var day=str[2]
       if(day<10)day="0"+day;
        date = date+ "-"+month[str[1]]+"-"+day+" "+str[3];
        return date;
    }
//定时器 js时间
           setInterval(function () {
                var date = new Date();
                datetime.innerHTML = date.toLocaleString();
            }, 1000);

alert('pattern' in document.createElement('input'));  //判断浏览器是否支持pattern属性
Global site tag (gtag.js) - Google Analytics