Tomando isso, e fazendo isso

1

Eu não sabia como escrever o título.

Eu preciso de uma saída como:

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

e transformá-lo em uma saída como:

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

Qualquer ajuda aqui seria muito apreciada.

    
por JPerkSter 21.06.2010 / 22:02

3 respostas

9
#!/bin/bash

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

uso:

cat file | scriptname
    
por 21.06.2010 / 22:25
1

Eu percebi isso com alguma idade de matriz

for i in 'seq 1 2 ${#array[@]}' ; do echo "${array[$i]} ${array[$i + 1]}"; done
    
por 21.06.2010 / 22:12
0

Cara, tem que haver uma maneira fácil de fazer isso. Eu claramente não dormi o suficiente, porque não consigo pensar em nada. Mas, como não gosto de matrizes, usei um loop for. Essencialmente, ele passa por cada LINHA e produz os números pares para um novo arquivo sem um quebra de linha, e acrescenta os ímpares a um intervalo. Parece funcionar!

COUNT=0
for LINE in $(cat file.txt);do
  if [ $(($COUNT % 2)) -eq 0 ];then 
      echo -n $LINE >> newfile.txt
      echo -n " " >> newfile.txt
  else
      echo $LINE >> newfile.txt
  fi
COUNT=$((COUNT + 1))
done



- Christopher Karel

    
por 21.06.2010 / 22:28

Tags