If you take the nul-terminated strings /sbin/init
and splash
, and convert them from the UCS-2LE (or UNICODELITTLE, or UCS-2-INTERNAL) encoding using iconv
, you get
$ printf '/sbin/init\0splash\0' | iconv -f UCS-2LE
猯楢⽮湩瑩猀汰獡h
The output from less
is more correct. The less
utility shows nul bytes (\0
) as ^@
.
Conclusion: The "Chinese text" that you are seeing is due to your editor determining that the data is encoded as UCS-2LE (for whatever reason). It is not actually Chinese but simply the two nul-terminated strings /sbin/init
and splash
.
There is nothing you need to worry about.
For more information about /sbin/init splash
see:
Additionally, you should not expect a text editor to be able to correctly understand the contents of the virtual file /proc/1/cmdline
as it's not a text file. This is probably why your text editor tried to determine the file's encoding, but failed to do so correctly.
See: Encoding of /proc/<pid>/cmdline files