Shell 按字符串将行拆分为几行\";并在每行的开头追加行号
我试图通过字符串“\n”将文件的每一行拆分为几行,并在新文件的每一行的开头添加原始文件的编号。我用一个例子来解释: 原始文件:Shell 按字符串将行拆分为几行\";并在每行的开头追加行号,shell,unix,sh,awk,Shell,Unix,Sh,Awk,我试图通过字符串“\n”将文件的每一行拆分为几行,并在新文件的每一行的开头添加原始文件的编号。我用一个例子来解释: 原始文件: 2,5,6,\n6,3,4\n7,8,3 23,4,1,\n5,5,6,\n2,3,8 我想要的文件 1,2,5,6 1,6,3,4 1,7,8,3 2,23,4,1 2,5,5,6 2,2,3,8 我已尝试使用以下代码,但根本不起作用: a=1 while read line do sed 's/^/tty/
2,5,6,\n6,3,4\n7,8,3
23,4,1,\n5,5,6,\n2,3,8
我想要的文件
1,2,5,6
1,6,3,4
1,7,8,3
2,23,4,1
2,5,5,6
2,2,3,8
我已尝试使用以下代码,但根本不起作用:
a=1
while read line
do
sed 's/^/tty/' "$line\n" >>file.csv
tr -s '\n' >> out.csv
a=`expr $a + 1`
done < file.csv
a=1
读行时
做
sed的/^/tty/“$line\n”>>file.csv
tr-s'\n'>>out.csv
a=`expr$a+1`
完成
带有
使用sed和while循环:
a=1
while read line; do
sed -r "s/(([0-9]+,)+[0-9]+)[^0-9]*/$a,\1\n/g" <<< "$line"
((a++))
done < file.csv
1,2,5,6
1,6,3,4
1,7,8,3
2,23,4,1
2,5,5,6
2,2,3,8
a=1
读行时;做
sed-r“s/([0-9]+,)+[0-9]+)[^0-9]*/$a\1\n/g“a=1
读行时
做
echo$line | sed's/\\n/\
“$a””/g'>>output.csv
a=`expr$a+1`
完成
a=1
while read line; do
sed -r "s/(([0-9]+,)+[0-9]+)[^0-9]*/$a,\1\n/g" <<< "$line"
((a++))
done < file.csv
1,2,5,6
1,6,3,4
1,7,8,3
2,23,4,1
2,5,5,6
2,2,3,8
a=1
while read line
do
echo $line|sed 's/\\n/\
'"$a"'/g'>>output.csv
a=`expr $a + 1`
done<filename