Charater comparison

I have two files.
Each file has one line with 2500 charaters in it and both lines should be the same, but thay are not.

I need to compare the two lines and find where the differences are. So what I need to do is compare each character one at a time to find out whats different.

This is what the line looks like, but it goes on and on and there is around 2500 characters.

timestamp locltime uptime state_D state_N state_n state_s state_r state_k state_c state_m state_d state_i state_t DNnsrkcmdit usr% sys% wio% idle% 1runq 5runq 15runq #proc #runque #waiting #swpque scanrate #proc/s #proc/p5s smtx smtx/cpu ncpus mntC_/ mntU_/ mntA_/ mntP_/ mntc_/ mntu_/ mnta_/ mntp_/ mntC_/var mntU_/var mntA_/var mntP_/var mntc_/var mntu_/var mnta_/var mntp_/var mntC_/export mntU_/export mntA_/export mntP_/export mntc_/export mntu_/export mnta_/export mntp_/export mntC_/export/install mntU_/export/install mntA_/export/install mntP_/export/install mntc_/export/install mntu_/export/install mnta_/export/install mntp_/export/install mntC_/export/patches mntU_/export/patches mntA_/export/patches mntP_/export/patches mntc_/export/patches mntu_/export/patches mnta_/export/patches mntp_/export/patches disk_runp_c1t0d0 disk_runp_c1t1d0 disk_runp_c5t60060E80047F150000007F1500000326d0 disk_runp_ssd5.fp1 disk_runp_c5t60060E80047F150000007F1500000325d0 disk_runp_ssd4.fp1 disk_runp_ssd5.fp0 disk_runp_ssd4.fp0 disk_runp_c0t0d0 disk_runp_c5t60060E80047F150000007F1500000326d0

script name cdiff (charater diff)
file1 = This is just a very short test file
file2 = This is Just a verry shirt test file

This is an example of how I want the output to look.

# cdiff file1 file2
This is Just a verry shirt test file
#

So the output is file2 printed out with any different characters highlighted.

awk 'BEGIN{}
FNR==NR{
 for (i=1;i<=NF;i++){
  a = $i
 }
 next
} 
{
  for ( j=1;j<=i;j++ ){
    
    if ( a[j] != $j ) {
        print "a: " $j " b: " a[j]
        # do somemore checking characters by characters.
    } 
  }
}
' "file1" "file2"

output:

 # ./testnew.sh
a: Just b: just
a: verry b: very
a: shirt b: short

Thanks for that, its not the output I was after, but it has helped me find the problem...

FYI this is the output I get when I run it.

-bash-3.00$ ksh cdiff
a: disk_runp_c5t60060E80047F150000007F1500000326d0 b: disk_peak
a: disk_runp_c5t60060E80047F150000007F1500000325d0 b: disk_mean
a: disk_peak b: disk_rd/s
a: disk_mean b: disk_wr/s
a: disk_rd/s b: disk_rK/s
a: disk_wr/s b: disk_wK/s
a: disk_rK/s b: tape_rd/s
a: disk_wK/s b: tape_wr/s
a: tape_rd/s b: tape_rK/s
a: tape_wr/s b: tape_wK/s
a: tape_rK/s b: swap_avail
a: tape_wK/s b: page_rstim
a: swap_avail b: freememK
a: page_rstim b: free_pages
a: freememK b: bge0/0Ipkt/s
a: free_pages b: bge0/0Opkt/s
a: bge0/0Ipkt/s b: bge0/0InKB/s
a: bge0/0Opkt/s b: bge0/0OuKB/s
a: bge0/0InKB/s b: bge0/0IErr/s
a: bge0/0OuKB/s b: bge0/0OErr/s
a: bge0/0IErr/s b: bge0/0Coll%
a: bge0/0OErr/s b: bge0/0NoCP/s
a: bge0/0Coll% b: bge0/0Defr/s
a: bge0/0NoCP/s b: bge0Ipkt/s
a: bge0/0Defr/s b: bge0Opkt/s
a: bge0Ipkt/s b: bge0InKB/s
a: bge0Opkt/s b: bge0OuKB/s
a: bge0InKB/s b: bge0IErr/s
a: bge0OuKB/s b: bge0OErr/s
a: bge0IErr/s b: bge0Coll%
a: bge0OErr/s b: bge0NoCP/s
a: bge0Coll% b: bge0Defr/s
a: bge0NoCP/s b: bge2/0Ipkt/s
a: bge0Defr/s b: bge2/0Opkt/s
a: bge2/0Ipkt/s b: bge2/0InKB/s
a: bge2/0Opkt/s b: bge2/0OuKB/s
a: bge2/0InKB/s b: bge2/0IErr/s
a: bge2/0OuKB/s b: bge2/0OErr/s
a: bge2/0IErr/s b: bge2/0Coll%
a: bge2/0OErr/s b: bge2/0NoCP/s
a: bge2/0Coll% b: bge2/0Defr/s
a: bge2/0NoCP/s b: bge1/0Ipkt/s
a: bge2/0Defr/s b: bge1/0Opkt/s
a: bge1/0Ipkt/s b: bge1/0InKB/s
a: bge1/0Opkt/s b: bge1/0OuKB/s
a: bge1/0InKB/s b: bge1/0IErr/s
a: bge1/0OuKB/s b: bge1/0OErr/s
a: bge1/0IErr/s b: bge1/0Coll%
a: bge1/0OErr/s b: bge1/0NoCP/s
a: bge1/0Coll% b: bge1/0Defr/s
a: bge1/0NoCP/s b: bge3/0Ipkt/s
a: bge1/0Defr/s b: bge3/0Opkt/s
a: bge3/0Ipkt/s b: bge3/0InKB/s
a: bge3/0Opkt/s b: bge3/0OuKB/s
a: bge3/0InKB/s b: bge3/0IErr/s
a: bge3/0OuKB/s b: bge3/0OErr/s
a: bge3/0IErr/s b: bge3/0Coll%
a: bge3/0OErr/s b: bge3/0NoCP/s
a: bge3/0Coll% b: bge3/0Defr/s
a: bge3/0NoCP/s b: tcp_Iseg/s
a: bge3/0Defr/s b: tcp_Oseg/s
a: tcp_Iseg/s b: tcp_InKB/s
a: tcp_Oseg/s b: tcp_OuKB/s
a: tcp_InKB/s b: tcp_Ret%
a: tcp_OuKB/s b: tcp_Dup%
a: tcp_Ret% b: tcp_Icn/s
a: tcp_Dup% b: tcp_Ocn/s
a: tcp_Icn/s b: tcp_estb
a: tcp_Ocn/s b: tcp_Rst/s
a: tcp_estb b: tcp_Atf/s
a: tcp_Rst/s b: tcp_Ldrp/s
a: tcp_Atf/s b: tcp_LdQ0/s
a: tcp_Ldrp/s b: tcp_HOdp/s
a: tcp_LdQ0/s b: nfs_call/s
a: tcp_HOdp/s b: nfs_timo/s
a: nfs_call/s b: nfs_badx/s
a: nfs_timo/s b: nfss_calls
a: nfs_badx/s b: nfss_bad
a: nfss_calls b: v2reads
a: nfss_bad b: v2writes
a: v2reads b: v3reads
a: v2writes b: v3writes
a: v3reads b: dnlc_ref/s
a: v3writes b: dnlc_hit%
a: dnlc_ref/s b: inod_ref/s
a: dnlc_hit% b: inod_hit%
a: inod_ref/s b: inod_stl/s
a: inod_hit% b: pp_kernel
a: inod_stl/s b: pagesfree
a: pp_kernel b: pageslock
a: pagesfree b: pagestotl
a: pageslock b: #httpds
a: pagestotl b: #httpsds
a: #httpds b: httpop/s
a: #httpsds b: http/p5s
a: httpop/s b: cndget/s
a: http/p5s b: search/s
a: cndget/s b: cgi/s
a: search/s b: htErr/s
a: cgi/s b: httpb/s
a: htErr/s b: %to1KB
a: httpb/s b: %to10KB
a: %to1KB b: %to100KB
a: %to10KB b: %to1MB
a: %to100KB b: %over1MB
a: %to1MB b: NoGatway
a: %over1MB b:
-bash-3.00$