Se producirá un error de sintaxis si la función de shell contiene lt;lt;!
La sintaxis de lt;lt;! en Shell es el uso del documento Aquí.
El formato de uso es básicamente así:
Comando lt;lt;!
Sección de contenidos
!
Utilice todo el "segmento de contenido" como entrada del comando. Cuando vea lt; lt;, sabrá que la siguiente palabra es un delimitador. Todo lo que sigue al delimitador se trata como entrada hasta que Shell vuelve a ver el delimitador (en una línea separada).
Mi entendimiento es implementar comandos que requieren interacción de una manera no interactiva, como iniciar sesión automáticamente en mysql (root: root, passwd: 123456), consultar la biblioteca de prueba, usuario = aa en los registros de la tabla test1.
#!/bin/sh
mysql -uroot -p123456 lt;lt;EOF
use test;
select * from testaa while a=10000; ###1000 not usr comillas simples, porque a es int
# tipo, solo el tipo char necesita comillas simples.
salir
EOF