shell读取文件写入新文件
#!/bin/sh #系统简称
SYST="HVPS"
#发送行号
SEND1234SEND=""
#接收行号
RECV1234RECV="" cd /home/was/test
list=(`ls hvps*`) for file in ${list[*]}
do cd /home/was/test
#清算SAPS
#MSGTYPE0MSGTYPE=$(cat $file |grep -m 'xmlns='|cut -d ':' -f |awk -F '"' '{print $1}'|awk -F ' ' '{print $1}')
MSGTYPE0MSGTYPE=$(cat $file |grep 'xmlns='|cut -d ':' -f |awk -F '"' '{print $1}')
msg=`cat $file` MSGRID0000MSGRID=$(cat $file |grep -m '<MsgId>'|sed 's/<MsgId>//g'|sed 's/<\/MsgId>//g'|sed 's/\s//g'|awk '{print $1}')
echo "Msgty:[${MSGTYPE0MSGTYPE}]"
echo "Msgid:[${MSGRID0000MSGRID}]" cd /home/was/new_test/ if ! [ -f $file ];then
touch $file
else
rm -f $file
touch $file
fi echo "{H:02${SEND1234SEND} ${SYST}${RECV1234RECV} ${SYST}000000000001XML${MSGTYPE0MSGTYPE[0]} ${MSGRID0000MSGRID} ${MSGRID0000MSGRID} 3D }"|sed -e 's/}/}\r/' >>$file
echo "$msg" >>$file sed -i '/XMLSpy v20/d' $file echo "${file}转换完成!"
head -n $file
echo " " done
shell打开读取一个文件内容,然后写入一个新的文件中,并对某些字段进行提取,写入新的字段的脚本。这是在工作中,需拼装大量的8543报文,原报文只读,不可写入,且也要对原报文进行提取某字段、新增报文头字段,删除某字段等操作,希望大家有用的着的地方,与大家共同学习进步!
Python方法:Python学习笔记五(读取提取写入文件)
shell读取文件写入新文件的更多相关文章
- php下载文件,解压文件,读取并写入新文件
以下代码都是本人在工作中遇到的问题,并完成的具体代码和注释,不多说,直接上代码: <?php //组织链接 $dataurl = "http://118.194.2 ...
- 文件操作ofstream,open,close,ifstream,fin,依照行来读取数据, fstream,iosin iosout,fio.seekg(),文件写入和文件读写,文件拷贝和文件
1.ofstream,open,close 写入文件 #include<iostream> #include<fstream> using namespace std; ...
- python读取并写入mat文件
用matlab生成一个示例mat文件: clear;clc matrix1 = magic(5); matrix2 = magic(6); save matData.mat 用python3读取并写入 ...
- Asp.net读取和写入txt文件方法(实例)!
Asp.NET读取和写入txt文件方法(实例)! [程序第一行的引入命名空间文件 - 参考] System; using System.Collections; using System.Config ...
- python之读取和写入csv文件
写入csv文件源码: #输出数据写入CSV文件 import csv data = [ ("Mike", "male", 24), ("Lee&quo ...
- Java——读取和写入txt文件
package com.java.test.a; import java.io.BufferedReader; import java.io.BufferedWriter; import java.i ...
- python读取和写入csv文件
读取csv文件: def readCsv(): rows=[] with file(r'E:\py\py01\Data\system.csv','rb') as f: reads=csv.reader ...
- C#读取和写入XML文件
关于xml是属于一个比较重要的东西,在平时开发的过程中,这块内容最主要的是要掌握XML内容的读取和写入操作. 一.什么是XML? XML 指可扩展标记语言(EXtensible Markup Lang ...
- java读取数据写入txt文件并将读取txt文件写入另外一个表
package com.xsw.test; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.F ...
随机推荐
- 搭建自己的技术博客系列(五)hexo博客接入busuanzi插件,展示访问量和网站运行时间
busuanzi计数脚本 busuanzi官方指引 一.安装脚本(必选) 要使用不蒜子必须在页面中引入busuanzi.js,目前最新版如下. 不蒜子可以给任何类型的个人站点使用,如果你是用的hexo ...
- ASP.NET Core SignalR:集线器Hubs
一.什么是集线器hubs 通过SignalR的集线器hubs中定义的方法,服务器可以调用连接中的客户端定义的方法,而客户端也可以调用服务器端集线器中定义的方法.SignalR负责实现了客户端和服务器之 ...
- Winform将FastReport的report与PreviewControl建立绑定关系
场景 FastReport安装包下载.安装.去除使用限制以及工具箱中添加控件: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...
- apache ignite系列(二):配置
ignite有两种配置方式,一种是基于XML文件的配置,一种是基于JAVA代码的配置: 这里将ignite常用的配置集中罗列出来了,一般建议使用xml配置. 1,基于XML的配置 <beans ...
- 大数据平台搭建 - cdh5.11.1 - hbase集群搭建
一.简介 HBase是一种构建在HDFS之上的分布式.面向列的存储系统.在需要实时读写.随机访问超大规模数据集时,可以使用HBase. 尽管已经有许多数据存储和访问的策略和实现方法,但事实上大多数解决 ...
- 理解Vue.mixin,带你正确的偷懒
关于Vue.mixin在vue官方文档中是这么解释的: 混入 (mixin) 提供了一种非常灵活的方式,来分发 Vue 组件中的可复用功能.一个混入对象可以包含任意组件选项.当组件使用混入对象时,所有 ...
- Maven 梳理 -scope属性
在POM 4中,<dependency>中还引入了<scope>,它主要管理依赖的部署.目前<scope>可以使用5个值: * compile,缺省值,适用于所有阶 ...
- SpringBootSecurity学习(12)前后端分离版之简单登录
前后端分离 前面讨论了springboot下security很多常用的功能,其它的功能建议参考官方文档学习.网页版登录的形式现在已经不是最流行的了,最流行的是前后端分离的登录方式,前端单独成为一个项目 ...
- js 判断字符串是否存在某个字符串
可使用String和Regexp对象的相关方法进行处理,如下 一.String对象方法 1.使用indexOf()方法,返回某个指定的字符串值在字符串中首次出现的位置.如果要检索的字符串值没有出现,则 ...
- Git很麻烦?不存在的!掌握这几招就够了
废话不多说,下面直接开始了! 查看原文 确保代码库是最新的,先用这条命令把你的代码拉取到本地 git clone -- 修改完代码后,按顺序执行下面四个命令 git pull git add * /r ...