我正在寻找从文件中删除所有行的方法(对于文件夹中的所有文件)都具有字符串#,并且还复制文件名并将其添加为第一列(或最后一列):
例如,我有:
# DX
# DEPTH
MD DX DY
100 23 35
100 23 35
输出应该是这样的,假设文件名为test2:
test2 MD DX DY
test2 100 23 35
test2 100 23 35
谢谢,S
使用简单的bash结构,遍历每个文件的每一行,将行和文件名另存为变量,然后在文件中的每一行将两个变量一起打印。
for file in *; do
for (( i = 1 ; i <= $( grep "" -c $file ) ; i++ ); do
line=$( cat $file | head -n ${i} | tail -1 )
echo "${file} ${line}"
done
done
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。