比方说类似 my_fun("abc","defghi","jk"); my_fun("abcdefg","hijklmnop","q"); 类似这样的文字,我想实现类似这样的对齐效果,就是不同行的逗号对齐. my_fun("abc" ,"defghi" ,"jk"); my_fun("abcdefg","hijklmnop","q" ); 以我想得到的脚本写法,大致就是先按照逗号切割字符串成字符串数组,然后统计每一列的最长长度,最后再把字符串数组拼回去,只不过拼回去前在它的尾部添加适当数量的空格... 感觉非常麻烦,我觉得这个需求应该有更灵活的实现.求问,有吗?bash,vim,awk之类的什么都好.
两个文件的对应列相减
cat file1
ATOM 1 N ASP 1 104.872 46.138 60.493 1.00 0.00 N
ATOM 2 H1 ASP 1 105.169 46.143 60.702 1.00 0.00 H
ATOM 3 H2 ASP 1 105.241 46.250 60.447 1.00 0.00 H
ATOM 4 H3 ASP 1 105.174 45.965 60.473 1.00 0.00 H
ATOM 5 CA ASP 1 103.501 46.223 60.288 1.00 0.00 C
cat file2
ATOM 1 N ASP 1 104.307 46.895 65.756 1.00 0.00 N
ATOM 2 H1 ASP 1 104.961 47.329 65.120 1.00 0.00 H
ATOM 3 H2 ASP 1 104.636 45.956 65.926 1.00 0.00 H
ATOM 4 H3 ASP 1 104.324 47.367 66.649 1.00 0.00 H
ATOM 5 CA ASP 1 102.945 46.927 65.177 1.00 0.00 C
awk -vOFS='\t'
'NR==FNR{for(i=5;i++