Я понятия не имел, как назвать название.
Мне нужно получить такой вывод:
[~]# cat file
user1
domain1.com
user2
domain2.com
user3
domain3.com
и превратите его в такой вывод, как:
user1 domain1.com
user2 domain2.com
user3 domain3.com
Любая помощь здесь будет принята с благодарностью.
#!/bin/bash
while read user
do
read domain
echo $user $domain
done
использование:
cat file | scriptname
Я понял это с некоторым возрастом массива
for i in `seq 1 2 ${#array[@]}` ; do echo "${array[$i]} ${array[$i + 1]}"; done
Блин, должен быть простой способ сделать это. Я явно не выспался, потому что ни о чем не могу думать. Но поскольку мне не нравятся массивы, я использовал цикл for. По сути, он проходит через каждую СТРОКУ, выводит четные числа в новый файл без разрыва строки и добавляет нечетные с разрывом. Кажется, работает!
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
- Кристофер Карел