篮之新喜 发表于 2024-6-29 01:28:01

【linux】linux工具使用

这一章完全可以和前两篇文章归类在一起,可以选择放一起看哦
 http://t.csdnimg.cn/aNaAg
 http://t.csdnimg.cn/gkJx7
 https://img-blog.csdnimg.cn/direct/cade085b2bff4508b639d7baf67b9db1.jpeg
 拖更好久了,抱歉,让我偷了会懒
1. 自动化构建工具 make , makefile

make 是一个命令,makefile 是一个文件(在当前目录下)

make 和 makefile 搭配使用可以实现自动化构建


https://img-blog.csdnimg.cn/img_convert/dc7e610630b668bb658be5590bd1696c.png


a. 依靠关系


https://img-blog.csdnimg.cn/img_convert/26bff03eb3e99eecf3c57792bec9fdeb.png
test 依靠于 test.c

b. 依靠方法


https://img-blog.csdnimg.cn/img_convert/fe9c54c1004f9b500b719a65ae40829e.png
$@ : 指的是依靠关系的左边
$^ : 指的是依靠关系的右边

也可以直接写成: gcc -o test test.c

c. 原理

make是如何工作的 ?

[*]在默认的方式下,也就是我们只输入make命令。那么, make会在当前目录下找名字叫“Makefile”或“makefile”的文件 (条件是依靠关系第一个必须和要编译文件有关)
[*]如果找到,它会找文件中的第一个目的文件(target),并把这个文件作为终极的目的文件
[*]如果文件不存在,或是这个文件所依靠的后面的文件修改时间要比前面这个文件老(可
以用 touch 测试,如: test 修改时间比test.c更加新),那么,他就会实行后面所定义的命令来生成前面这个文件

[*]make会一层又一层地去找文件的依靠关系,直到终极编译出第一个目的文件
[*]在找寻的过程中,如果出现错误,比如末了被依靠的文件找不到,那么make就会直接退出,并报错,
而对于所定义的命令的错误,或是编译不乐成,make根本不理



d. make 判定是否需要重新编译


[*]判定源文件的修改时间和可实行文件的修改时间(如果源文件没有修改:其修改时间比可实行文件早;如果源文件右修改:其修改时间比可实行文件晚)

[*]如果源文件没有修改,则再使用 make 是不会编译的 ; 如果源文件有修改,则可以使用 make 重新编译

三种时间:

[*]Access:
最近一次进入文件时间,包罗进入文件,大概修改文件内容

[*]Modify:
最近一次修改文件内容的时间

注:
touch + 没有创建的文件名
新创一个文件
touch + 有创建的文件名
更新时间

以是 touch 对 Modify 有影响

https://img-blog.csdnimg.cn/img_convert/cc6394ba0536b557aa2cb27ac7cfdc60.png



[*]Change:
最近一次修改文件属性的时间

回车换行:
回车( \r ):光标回到这一行的最开始处
换行( \n ):光标跳到下一行的最开始处

e. 文件清理


https://img-blog.csdnimg.cn/img_convert/c9e042d62be92d26e8238f8d5835f779.png


[*]make clean
清理文件

注意:
我们将它设置为伪目的,用 .PHONY 修饰,伪目的的特性是,总是可以被
实行

https://img-blog.csdnimg.cn/img_convert/df90b52a01ff3c958594304e3275e787.png

2. git 工具




[*]git + clone + 堆栈里链接
与长途堆栈链接

https://img-blog.csdnimg.cn/img_convert/b245be64d05d21503bef528a78bf5ace.png

https://img-blog.csdnimg.cn/img_convert/2a3960328c5db75f6bae82575fd5932b.png



[*]git + add + 路径 / git + add + 文件名
添加该路径下的文件(没有被添加过的)

https://img-blog.csdnimg.cn/img_convert/0d03c89dac5b04d32050e031691a5d85.png



[*]git + commit + -m + "标注信息"
提交改动到本地

https://img-blog.csdnimg.cn/img_convert/1a406731aa4d3a5cc152ee44d11fb5af.png

注:
第一次使用git,可能会出现一些题目:

https://img-blog.csdnimg.cn/img_convert/66a3d5ef453663a05c3bc1791acd8917.png

注:名字和邮箱换成自己的就好了
https://img-blog.csdnimg.cn/img_convert/61698311c7e5f0430ce4a7ba3ab313aa.png



[*]git + push
提交到长途堆栈内里

https://img-blog.csdnimg.cn/img_convert/3191a362d107acc20df8d453f116b056.png

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 【linux】linux工具使用