shell如何将文件名写入文件作为第一列

1. 创建临时文件TMPFILE(假设我的文件名为aaa_td)

file=aaa_td

TMPFILE=$(mktemp ${file%_*}.XXXXXX) || exit 1

注:{file%_*}表示文件名中"_"之前部分

2.将aaa_td写入临时文件(将每一行的空格用\t替换)

cat $file|tr " " "\t" >$TMPFILE #数据写入临时文件

3.获取“_”之前的文件名

name=${file%_*}

4.将文件名作为第一列,用tab隔开,写入新文件

awk '{print $0"\t'$name'"}' $TMPFILE >${file%_*}.txt

猜你喜欢

转载自www.cnblogs.com/xuebf/p/11778130.html
今日推荐