列別にSSHループ出力を印刷

列別にSSHループ出力を印刷

次のループの出力を列に印刷したいと思います。誰でもこれを提案できますか?

#!/bin/bash
DATE=`date "+%d-%m-%Y_%H-%M-%S"`

### Find User from Server with Expiry Date 
for i in `cat /home/sandeepj/Project_user_count/serverlist2`;
do
echo -e "**********"
echo -e "$i"
ssh sandeepj@${i} "awk -F\: '{print \$1}' /etc/passwd" 
done >> /tmp/user_count.txt

現在の出力:

**********  
10.25.59.3
root
bin
daemon
adm
lp
sync
**********
10.25.59.13
root
bin
daemon
adm
lp
sync

予想出力:

**********  **********
10.25.59.3  10.25.59.13
root        root
bin         bin
daemon      daemon
adm         adm
lp          lp
sync        sync

私の目標は上記の形式を達成することです。

ベストアンサー1

場合は、代わりに

>> /tmp/user_count.txt

各サーバーに新しいファイルが作成されます。

do
   (
   printf '%s\n%s\n' '**********' "$i"
   ssh sandeepj@${i} "awk -F\: '{print \$1}' /etc/passwd" 
   ) > "/tmp/user_count_${i}.txt"
done

これは簡単です:

paste user_count_*.txt | column -tn

おすすめ記事