Makefile 和 shell 脚本的区别与联系

一、什么是 Makefile?

描述了整个工程的编译、链接规则。当源码文件比较多的时候就不适合通过输入 gcc 命令来编译,Makefile 文件描述了编译哪些源码文件、如何编译,每次需要编译工程时只需要使用这个文件就行了。

注意:Makefile 中空出来的部分用 Tab 键,不能用空格;注释用 “#”,不能用 “//”。

使用 Makefile 的方法:直接在命令行中输入 “make”,make 命令会在当前目录下查找是否存在 Makefile 文件。

二、什么是 shell 脚本?

我们如果要实现一个需求,需要在 shell 窗口中输入很多命令,可以直接在 shell 窗口中输入,但每次用到相同的需求时都需要重新敲,我们可以把这些命令记录在一个文档中,然后去执行这个文档中的命令,这样就能一步操作完成。

1、shell 脚本就是一些命令的集合,它是个纯文本文件,命令从上而下,一行一行的开始执行。

2、shell 脚本提供数组、循环、条件判断等功能。

3、shell 脚本扩展名为 .sh。

shell 脚本第一行一定要为: #!/bin/bash -------> 表示使用 bash

使用 Shell 脚本的方法:给 .sh 文件提供可执行权限 + ./xxxx.sh

三、Makefile 和 shell 脚本的区别

1、在 Makefile 中可以调用 shell 脚本

2、通配符区别

shell 中通配符 * 表示所有的字符

Makefile 中通配符 % 表示所有的字符

3、shell 不允许 “=” 号两边有空格;Makefile 允许变量赋值时,“=” 号两边留空格。

4、命令和变量的引用

shell           	     $() 放命令,${} 放变量
Makefile               	 $() 和 ${} 都能进行取变量值

四、Makefile 中的 shell 语法

1、xx = $(shell 这里是 shell 代码)

2、Makefile中执行 shell 命令时,一行创建一个进程来执行。我们为了保证 shell 命令在一个进程中执行,在很多 Makefile中有很多行的末尾都是 “;\”。
在这里插入图片描述

  • 14
    点赞
  • 78
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值