Erre a kérdésre már itt vannak válaszok :
Megjegyzések
- Lásd: 3.6.6 Itt találhatók dokumentumok a bash kézikönyvben
Válasz
<<-EOF
nem veszi figyelembe a heredoc vezető lapjait, míg a <<EOF
nem. Így:
cat <<EOF Line 1 Line 2 EOF
Line 1 Line 2
, míg
cat <<-EOF Line 1 Line 2 EOF
termel
Line 1 Line 2
Válasz
Ha a következőt használja: <<-EOF
, akkor ajánlom a Bourne Shell man oldalát:
Ha azonban a kötőjel (-) a < <:
-
a vezető füleket a héjbevitel beolvasása előtt (de után a paraméter és a parancs helyettesítése a szóra történik);
-
a vezető fülek eltávolításra kerülnek a shell bemenetéből, amikor azt olvassák, és mielőtt minden sort összehasonlítanának a szavakkal; és
-
a shell bevitelt felolvassák az első sorig, amely szó szerint egyezik a kapott szóval, vagy egy EOF-ig.
Tehát a <<-
lehetővé teszi az itt olvasható dokumentum tartalmának behúzását a jobb olvashatóság érdekében.