shell生成简单格式的xml实例
以下是shell代码:
create_xml.sh
#! /bin/bash
#author: dengzhaoqun
#date: 201202/14
outfile=out
tabs=0
put(){
echo '<'${*}'>' >> $outfile
}
put_head(){
put '?'${1}'?'
}
out_tabs(){
tmp=0
tabsstr=""
while [ $tmp -lt $((tabs)) ]
do
tabsstr=${tabsstr}'\t'
tmp=$((tmp+1))
done
echo -e -n $tabsstr >> $outfile
}
tag_start(){
out_tabs
put $1
tabs=$((tabs+1))
}
tag_end(){
tabs=$((tabs-1))
out_tabs
put '/'${1}
}
tag_value(){
out_tabs
str=""
str=${1}' value="'${2}'"/'
put $str
}
以下是测试代码:
ts_xml.sh
#! /bin/bash
#author: dengzhaoqun
#date: 20120215
source './create_xml.sh'
put_head 'xml version='1.0' encoding="GBK"'
tag_start '投递信息'
tag_start '硬件'
tag_value '网卡' 1
tag_end '硬件'
tag_end '投递信息'
生成的xml文件如下
<?xml version=1.0 encoding="GBK"?>
<投递信息>
<硬件>
<网卡 value="1"/>
</硬件>
</投递信息>
相关推荐
-
利用Shell解析处理XML的方法汇总
前言 前几天在干活的时候遇到一个需要解析处理xml文件的一个需求,当时考虑到逻辑比较复杂,因此用java慢慢搞了搞.不过这个需求经常会变,每次变化之后都要重新找到jar包的代码,改了之后还要替换原来的jar包,一来不方便修改,二来不方便统一保存代码,三来也不方便查看jar包的功能. 其实对于这种比较灵活的功能,最方便高效的做法是采用一些脚本语言,比如python,ruby等等,开发效率高,而且也能处理一些复杂逻辑.但是由于种种原因,工作中有的机器没有安装这些语言的解释器.因此不得已,研究了一波用
-
shell脚本实现快速生成xml格式sitemap实例分享
用shell快速生成xml格式的sitemap地图文件,中小型网站适用.在本次案例中,生成12053条URL的sitemap文件,仅用时4.3秒!shell代码如下: 复制代码 代码如下: cat sitemap.txt|awk 'BEGIN{print "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<urlset>"}{print "<url>\n<
-
shell生成简单格式的xml实例
以下是shell代码: create_xml.sh 复制代码 代码如下: #! /bin/bash #author: dengzhaoqun #date: 201202/14 outfile=out tabs=0 put(){ echo '<'${*}'>' >> $outfile } put_head(){ put '?'${1}'?' } out_tabs(){ tmp=0 tabsstr="" while [ $tmp -lt $((tabs))
-
Python 生成VOC格式的标签实例
常用目标检测模型基本都是读取的PASCAL VOC格式的标签,下面代码用于生成VOC格式的代码,根据需要修改即可: from lxml import etree, objectify def gen_txt(filename, h, w, c): E = objectify.ElementMaker(annotate=False) anno_tree = E.annotation( E.folder('VOC_OPEN_IMAGE'), E.filename(filename), E.sourc
-
python生成lmdb格式的文件实例
在crnn训练的时候需要用到lmdb格式的数据集,下面是python生成lmdb个是数据集的代码,注意一定要在linux系统下,否则会读入图像的时候出问题,可能遇到的问题都在代码里面注释了,看代码即可. #-*- coding:utf-8 -*- import os import lmdb#先pip install这个模块哦 import cv2 import glob import numpy as np def checkImageIsValid(imageBin): if imageBin
-
如何用C语言生成简单格式的xml
代码很简单,直接贴了. 复制代码 代码如下: #include <stdio.h> static FILE *out = NULL; static int tabs = 0; void set_out_fp(FILE *fp) { out = fp; } void put(char *str) { fprintf(out, "%s", str); } void put_head(char
-
Python实现将MySQL数据库表中的数据导出生成csv格式文件的方法
本文实例讲述了Python实现将MySQL数据库表中的数据导出生成csv格式文件的方法.分享给大家供大家参考,具体如下: #!/usr/bin/env python # -*- coding:utf-8 -*- """ Purpose: 生成日汇总对账文件 Created: 2015/4/27 Modified:2015/5/1 @author: guoyJoe """ #导入模块 import MySQLdb import time impor
-
使用apidocJs快速生成在线文档的实例讲解
apidoc是一个轻量级的在线REST接口文档生成系统,支持多种主流语言,包括Java.C.C#.PHP和Javascript等.使用者仅需要按照要求书写相关注释,就可以生成可读性好.界面美观的在线接口文档. 本文主要包含以下内容: 1.介绍apidoc的基本概念 2.安装.使用和简单配置 3.一些特殊参数的含义及其使用 4.介绍一些使用经验 前言 apidoc能做什么? apidoc是一个轻量级的在线REST接口文档生成系统,可以根据其特定的规则的代码注释来生成静态网页.首先看下它生成的文档界
-
PHP简单实现解析xml为数组的方法
本文实例讲述了PHP简单实现解析xml为数组的方法.分享给大家供大家参考,具体如下: 最近想要做一个插件机制,需要用到xml,在解析xml时候需要转换为数组,特意记录一个此种解析方式 xmlDemo.xml文件: <?xml version="1.0" encoding="UTF-8"?> <main xmlns="http://www.xiaoetongo.cn" versionCode="1.0">
-
XML轻松学习手册(5)XML实例解析
第五章:XML实例解析 提纲: 一:实例效果 二:实例解析 1.定义新标识. 2.建立XML文档. 3.建立相应的HTML文件. XML在不同领域有着广泛的应用,比如在科技领域的MathML,无线通信应用的WML,在网络图象方面的SVG等等,我们这里侧重讨论XML在web上的应用.XML在web上应用主要是利用其强大的数据操作能力.一般用XML配合javascript和asp等服务器端程序,可以实现网络上几乎所有的应用需求. 考虑讲解方便,我们在下面介绍一个简单的实例,不包含服务器端程序.目的在
-
从CentOS安装完成到生成词云python的实例
前言 人生苦短,我用python.学习python怎么能不搞一下词云呢是不是(ง •̀_•́)ง 于是便有了这篇边实践边记录的笔记. 环境:VMware 12pro + CentOS7 + Python 2.7.5 安装系统 之前一直用的是win10子系统,现在试试CentOS,CentOS官网下载最新系统dvd版 安装到VMware 12pro.网上很多教程.例如这个链接.等待安装完成后开始. 第一个命令 用Ubuntu的时候没有的命令会提示你安装,感觉很简单的事.但是到CentOS上却变得很
-
layui关闭层级、简单监听的实例
弹出一个小页面input 代码如下 /*监听工具条*/ table.on('tool(test)', function(obj){ var data = obj.data; /*获得当前行数据*/ var layEvent = obj.event; /*获得 lay-event 对应的值(也可以是表头的 event 参数对应的值)*/ var tr = obj.tr; /*获得当前行 tr 的DOM对象*/ if(layEvent === 'crypto'){//跳转生成秘钥页面 layer.p
随机推荐
- asp.net下中文验证码,免费开源代码
- 基于B-树和B+树的使用:数据搜索和数据库索引的详细介绍
- vue2滚动条加载更多数据实现代码
- 详解Java的Hibernate框架中的缓存与二级缓存
- myeclipse开发servlet_动力节点Java学院整理
- ES6中Array.includes()函数的用法
- js图片自动轮播代码分享(js图片轮播)
- 如何设置一个指定高度的DIV
- asp论坛在线人数统计研究
- VBS教程:函数-CBool 函数
- Redis 命令的详解及简单实例
- js实现跟随鼠标移动且带关闭功能的图片广告实例
- 在Python中使用全局日志时需要注意的问题
- C++中Semaphore内核对象用法实例
- 关于使用coreseek并为其做分页的介绍
- 新手菜鸟必读:session与cookie的区别
- vue2.0 如何把子组件的数据传给父组件(推荐)
- 解决低版本的浏览器不支持es6的import问题
- nginx日志中添加请求的response日志(推荐)
- Android之高效加载大图的方法示例