extract-vmlinux: update to check to search "MS-DOS executable"

instead of check if there is a line that ends with "MS-DOS executable",
as on some host OS, there might be other information printed
after "MS-DOS executable".

Like on Debian OS, the output is something like following:
$ cat /etc/issue
Debian GNU/Linux bullseye/sid \n \l

$ file cuttlefish_assembly/vmlinux
cuttlefish_assembly/vmlinux: MS-DOS executable PE32+ executable (EFI application) Aarch64 (stripped to external PDB), for MS Windows
$

Test: boot test manually with launch_cvd command

Signed-off-by: Yongqin Liu <[email protected]>
Change-Id: I0e6d761271f4182d8efa45a1851e4a3bea013952
diff --git a/scripts/extract-vmlinux b/scripts/extract-vmlinux
index 1f90139..7724f38 100755
--- a/scripts/extract-vmlinux
+++ b/scripts/extract-vmlinux
@@ -18,7 +18,11 @@
 	readelf -h $1 > /dev/null 2>&1
 	if [ $? -ne 0 ]; then
 		# On ARM64, the kernel might be a PE file instead
-		file $1 | grep -q "MS-DOS executable$" || return 1
+		# and output of file command might be something like following:
+		# $ file cuttlefish_assembly/vmlinux
+		# cuttlefish_assembly/vmlinux: MS-DOS executable PE32+ executable (EFI application) Aarch64 (stripped to external PDB), for MS Windows
+		# $
+		file $1 | grep -q "MS-DOS executable" || return 1
 	fi
 
 	cat $1