Linux操作命令(Linux下的.c文件执行,which命令的使用与PATH变量详解)

目录

知识结构

Linux下使用gcc编译C语言文件

1,.c文件的编写

2,.c文件的编译与执行

which

PATH

1,将命令放到PATH变量的路径下

2,修改PATH变量

临时修改:PATH变量重定义

永久修改:PATH问价内容修改


知识结构

Linux下使用gcc编译C语言文件

1,.c文件的编写

.c结尾的文件就是编写的c语言文件,上一篇文章我们介绍了vim编辑工具,使用vim编辑一个.c结尾的文件即可,编写一个简单的“hello,world!”的c语言文件。

注意,每次建立文件夹或者执行操作时,都要注意文件夹位置。

在文件里面编写一个简单的c语言文件,跟你在windows下的程序编译软件是一样的,这里只是演示,所以写一个最简单的c语言程序:

编写完毕后保存。

2,.c文件的编译与执行

Linux中的编译器使用的是gcc,对于一个之前没有下载过的linux系统来说,要先下载gcc编译器。

使用如下命令:

yum install gcc -y

下载完毕后,就可以开始编刚刚的.c文件了:

gcc -o hello hello.c

这句指令的意思是,编译文件hello.c,编译后产生的可执行文件命名为hello,-o选项表示输出文件。所以,在program-c的文件下可以看到绿色的文件hello,绿色表示该文件可执行。

执行文件有两种方法,一个是使用相对路径,一个是使用绝对路径。

which

说明一下which与PATH的关系,which搜索可执行文件,搜索的范围由PATH变量指定。

which查找可执行文件,并显示所在位置。/usr 文件夹中 存放Linux系统里的资源文件,即程序,相当于Windows内的c:\program files。

which搜索命令的范围由PATH变量指定是什么意思呢?先来看看搜索范围在哪。echo可以看作是c语言中的printf,我们把PATH变量表示的范围展示一下:

[root@localhost program-c]# echo $PATH

执行这条命令输出的是:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

PATH变量定义了一些文件夹的路径,这些文件夹里面存放了大量的命令。
当which 一个命令的时候,就会从PATH的路径下面去找,如果在第一个文件夹内找到了,返回;没找到就继续去第二个文件夹内找,知道查找到最后的文件夹,没找到的话,查找失败。

拓展:Linux系统中如何确定命令执行成功还是失败了呢?使用"$?"命令即可。

PATH

1,将命令放到PATH变量的路径下

查找命令都是到PATH变量指定的路径下寻找。PATH相信大家也不会陌生,在Windows下安装一些编程工具时,我们就要给Windows配置编程环境,这个时候我们就会在Windows下的高级配置环境配置中,定义环境变量“PATH=xxxxxxxxxxx”。在Linux中其实PATH也是差不多的效果。

如果由一些命令不在PATH下,我们如何通过定义PATH实现命令的定义?

有两种方法,第一种是通过把hello放到PATH路径下是实现。

刚刚我们编写的.c文件,有输出helloworld的命令,所以尝试将hello定义成命令。

2,修改PATH变量

第二种方法是修改PATH本身实现:

临时修改:PATH变量重定义

永久修改:PATH问价内容修改

键入“G”→直接跳到文件最后一行

键入“o”→另起一行开始insert内容

插入PATH=你的hello所在路径:$PATH

如下所示:

本次分享就到这里,如果有问题可私信或评论区留言。

每个人都具有各种各样的本性的胚芽,有的时候表现出这样一种本性,有时候表现出那样一种本性,有时候变得面目全非,其实还是原来那个人。

                                                                                                -----列夫托尔斯泰《复活》

  • 25
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值