gcc [<другие ключи>] -o <имя выходного файла> <имя входного файла>
# Пример: исходный код demo.c, программа demo
gcc -o demo demo.c
Если не указать имя выходного файла, выходной файл будет называться a.out
.
Дополнительные ключи:
-g
— скомпилировать с отладочной информацией (для дальнейшего использования отладчика)-lm
— подключить математические функции (может иногда требоваться для программ, использующих функции изmath.h
, если компиляция падает с ошибкойundefined reference
)
./demo
.
— текущий каталог
cp -b <имя исходного файла> ~/../group105/$(whoami)-$(date -Idate).c
# Пример: исходный код demo.c
cp -b demo.c ~/../group105/$(whoami)-$(date -Idate).c
Что означают символы в этой команде?
-b
— не перезаписывать существующий файл~
— ваш домашний каталог..
— перейти на один уровень выше$(команда)
— выполнить команду в скобках и подставить её вывод вместо скобокwhoami
– команда, которая выводит ваше имя пользователяdate -Idate
— команда, которая выводит текущую дату в безопасном международном формате ISO (ГГГГ-ММ-ДД)
Как будет выглядеть команда с подставленными данными можно посмотреть с помощью команды echo
:
echo <другая команда без знаков &, |, ; >
# Пример:
echo cp -b demo.c ~/../group105/$(whoami)-$(date -Idate).c
# Выведет на экран:
cp -b demo.c ~/../group105/group105-2018-09-01.c