海运的博客

Go语言解json

发布时间:July 30, 2017 // 分类: // No Comments

package main
import "fmt"
import "encoding/json"

type trade struct {
    Amount float64
    Price  float64
    Tid    uint64
    Date   uint64
    Trade_side string
}

type res struct {
    Status string
    Trades []trade
}

func main() {
    keysBody := []byte(`{"status":"ok","trades":[{"amount":1783.197,"price":11.64,"tid":1334222,"date":1501319002,"side":"sell","trade_side":"ask"},{"amount":1414.198,"price":11.64,"tid":1334223,"date":1501319002,"side":"sell","trade_side":"ask"}]}`)
    //var keys []trade 
    var keys res
    json.Unmarshal(keysBody, &keys)
    fmt.Println(keys)
}

未知结构:

package main

import "fmt"
import "encoding/json"

func main() {
    keysBody := []byte(`{"1":{"id":7,"last":"0.00000052","lowestAsk":"0.00000052","highestBid":"0.00000051","percentChange":"0.06122448","baseVolume":"82.45931512","quoteVolume":"161135661.58285543","isFrozen":"0","high24hr":"0.00000053","low24hr":"0.00000049"},"2":{"id":8,"last":"0.00005285","lowestAsk":"0.00005335","highestBid":"0.00005285","percentChange":"0.02841019","baseVolume":"8.86982292","quoteVolume":"169072.72178908","isFrozen":"0","high24hr":"0.00005453","low24hr":"0.00005051"}}`)
    var n map[string]interface{}
    err := json.Unmarshal(keysBody, &n)
    if err != nil {
        fmt.Println(err)
    }
    for k, v := range n {
        fmt.Println(k, "------", v)
        for k2, v2 := range v.(map[string]interface{}) {
            fmt.Println(k2, "------", v2)
        }
    }
}

Centos7安装MariaDB

发布时间:July 30, 2017 // 分类: // No Comments

yum install mariadb-server
systemctl enable mariadb
systemctl start mariadb

MariaDB设置root密码和安全设置:

mysql_secure_installation

crontab使用及不执行解决

发布时间:April 18, 2017 // 分类: // No Comments

crontab 的基本格式是:

<分钟> <小时> <日> <月份> <星期> <命令>
分钟 从 0 到 59.
小时 从 0 到 23.
日期 从 1 到 31.
月份 从 1 到 12.
星期 从 0 到 6, 0 代表星期日.

多个时间可以用逗号隔开,例如:"1,3,4,7,8"
范围可以用连字符给出,例如:"1-6",意思等同于"1,2,3,4,5,6"
星号可以作为通配符,例如,在"小时域"里的星号等于是"每一个小时"。
/号每多长时间,例如,"*/3"在小时域中等于"0,3,6,9,12,15,18,21"。
crontab执行程序时环境变量和用户执行时不一致,在编写命令或脚本时要写全路径,或设置PATH。
当不能正常执行时可按以下流程调试:
1.查看是否在任务队列:

crontab -l

2.查看日记是否已执行:

tail /var/log/cron

3.重定义执行结果:

0 3 * * 0 back-sql >> /tmp/crontab.log 2>&1

4.如果是bash脚本,增加调试:

#/bin/bash
set -x

一些示例:

每分钟执行一次

* * * * * cmd

每小时的第3和第15分钟执行

3,15 * * * * cmd

上午8点到11点的第3和第15分钟执行

3,15 8-11 * * * cmd

每隔两天的上午8点到11点的第3和第15分钟执行

3,15 8-11 */2  *  * cmd

每晚的23点执行:

00 23 * * * /etc/init.d/smb restart

每周日23点执行

10 1 * * 6,0 /etc/init.d/smb restart

PHP大文件读取每一行

发布时间:March 30, 2017 // 分类: // No Comments

<?php
$end_str = '';
$fp = fopen($filename, 'r');
while (!feof($fp)) {
  $data = fread($fp, 4096);
  if ($end_str) {
    $data = $end_str.$data;
  }
  $datas = explode("\n", trim($data));
  if (substr($data, -1) == "\n" || substr($data, -1) == "\r") {
    $end_str = '';
  } else {
    $end_str = trim(array_pop($datas));
  }
  foreach ($datas as $value) {
    $line= trim($value);
  }
}
fclose($fp);

华硕/网件路由器详细配置对比

发布时间:March 20, 2017 // 分类: // No Comments

204142njm8ksm1jvx0grhj.png
133632ozmfjcn5cjk4kufu.jpg
133633l8uxxykayzmobonm.jpg
133634irvqcvbzcc9cbb3a.jpg
160037xulh8aohuz0ttqjr.jpg

分类
最新文章
最近回复
  • track: NAT 部分没处理,这块感觉有问题。
  • yu: 查到有用的资料很幸福!
  • boscotsang: 请问下服务器端如何控制权限让通过权限认证的客户端才能连接?现在这样只要有自编译的客户端程序都可...
  • yck932: 大侠,请问哪里有 tunnels 详细参考资料,谢谢
  • bubble: 现在linux 4.9以上的内核有个bbr的参数,用这个bbr比用锐速效果更好,可参考我的博文...
  • wang: openwrt 只有 tmp/etc/miniupnpd.conf 修改后又重置了,其他路径找...
  • wbq: 可以了 只是https透明代理如何做呢?
  • wbq: 你的这个配置需要浏览器设置代理ip+port, 现在假设不设置,只配置客户端网关为Nginx那...
  • wbq: 您好,想用Nginx做个透明代理,客户端机器配置下网关(即Nginx那台机器),客户端dns配...
  • ccc: 可以提供易调用openssl常用函数吗?
归档
友情链接