采取这个,做出那个

采取这个,做出那个

我不知道该如何措辞这个标题。

我需要获取如下输出:

[~]# cat file
user1
domain1.com
user2
domain2.com
user3
domain3.com

并将其转换为如下输出:

user1 domain1.com
user2 domain2.com
user3 domain3.com

任何帮助都将不胜感激。

答案1

#!/bin/bash

while read user
do 
        read domain
        echo $user $domain     
done

用法:

cat file | scriptname

答案2

我用一些 array-age 解决了这个问题

for i in `seq 1 2 ${#array[@]}` ; do echo "${array[$i]} ${array[$i + 1]}"; done

答案3

伙计,一定有一个简单的方法可以做到这一点。我显然没有睡够,因为我想不出任何方法。但是,因为我不喜欢数组,所以我使用了 for 循环。它基本上遍历每一行,并将偶数输出到新文件中而不换行,并将奇数附加为换行符。似乎有效!

计数=0
对于 $(cat file.txt) 中的 LINE;执行
  如果 [ $(($COUNT % 2)) -eq 0 ];那么
      echo -n $LINE >> newfile.txt
      echo -n " " >> 新文件.txt
  别的
      回显 $LINE >> newfile.txt
数量=$((数量 + 1))
完毕



——克里斯托弗·卡雷尔

相关内容