S
Size: a a a
S
АП
АП

AT
AD
C
D
C
EA
AD
PG
D
D
a
echo $(ls)
только echo выполняетсяGG
$(что-то) — это макрос, внутри которого возможна подстановка заранее заданного значения$(что-то) никакого вызова внешней функции (ls как команда, а не как переменная скрипта) не происходит, если это не первая команда в строке:hello: main.cpp hello.cpp
$(CC) $(CFLAGS) $? $(LDFLAGS) -o $@
в данном случае выполнится команда $(CC) — вызов компилятора, а $(CFLAGS) будут преобразованы в строкуGG
ls как команду, нужно будет добавить её в шаг сборки явным образом, а не через bash-образный вызов в скобкахa
GG
метка:где
ls
метка — это метка в makefile, блок команд, а ls — вызываемая командаa