当前位置: 首页 > news >正文

住宅城乡建设部门户网站免费申请网站

住宅城乡建设部门户网站,免费申请网站,快速网站排名提升工具,安徽省建设厅焊工证查询网站Linux 下一切皆为文件, 文件包括头文件,库文件(静态库和共享库),可执行文件,目录文件,软链接文件,配置文件等。 每个文件都依据权限分为用户、用户组和其他人三个身份,…

Linux 下一切皆为文件,

文件包括头文件,库文件(静态库和共享库),可执行文件,目录文件,软链接文件,配置文件等。

每个文件都依据权限分为用户、用户组和其他人三个身份,权限分为 read,write 和execute。

Linux 的目录配置是目录树,可以使用绝对路径和相对路径在系统中确定文件。

Linux 中是没有扩展名的概念的,可以使用 file 命令查看文件类型,使用 pwd 查看当前工作目录,cd 更换当前工作目录,mkdir 创建目录。

今天通过 protoc 这个命令来理解一下,一切皆文件,这句话的意思。

首先,什么是命令?

ls 命令可能是

(1) 可执行文件

(2) 链接到其他可执行文件的软链接文件

(3) 链接到其他脚本的软链接文件。

为什么在终端执行 ls 这个命令会打印当前目录的文件列表

先了解 Ubuntu 系统中各种文件颜色的含义

蓝 色:表示文件夹 ,ls -l或ll时可以看到权限部分的第1个字母是d
被绿色阴影框住的,是获得了最高权限(777)的文件夹绿色:可执行文件,包括jar
浅蓝色:软链接文件
红色:压缩文件  
白色:文本文件红色闪烁:错误的符号链接
黄色:设备文件
灰色:其它文件

执行

which ls

会在终端显示

/usr/bin/ls

可以

cd /usr/bin && ls

可以发现很多文件,其中有浅蓝色的软链接文件夹和绿色的执行文件

此时

ls -lah ls

会显示

-rwxr-xr-x root root 139k 95 2019 ls

再如,执行

which protoc

终端显示

/opt/bstos/2.2.5.3/sysroots/x86_64-bstsdk-linux/usr/bin/protoc

可以

cd /opt/bstos/2.2.5.3/sysroots/x86_64-bstsdk-linux/usr/bin/ && ls

可以发现很多文件,其中有浅蓝色的软链接文件夹和绿色的执行文件

如果 ls 执行 protoc

ls -lah protoc

会在终端显示

lrwxrrwxrwx 1 root root 15 Aug 17 07:33 protoc -> protoc-3.12.3.0

说明 protocol 是一个软链接文件,

protoc 命令软链接到 protoc-3.12.3.0,而 protoc-3.12.3.0 是一个可执行文件。

执行到这里,如果在 docker 环境内,从 git 下载 3.12.2 版本的 protobuf 源码,之后编译

mkdir -p cmake/build && cd cmake/buildmake -jmake install

而docker 环境内的 protoc 版本是 3.6.1的,那为什么执行

protoc  --version

时会指向,最后显示的是

libprotoc 3.6.1

而不是刚刚编译的 3.12.2 版本的 protobuf

which protoc

时,显示的

/opt/bstos/2.2.5.3/sysroots/x86_64-bstsdk-linux/usr/bin/protoc

得先环境变量 PATH 是什么?

查看所有的环境变量

root@ubuntu:~$ env

查看单个指定的环境变量:

root@ubuntu:~$ echo $PATH

会显示

/opt/bstos/2.2.5.3/sysroots/x86_64-bstsdk-linux/usr/bin:
/opt/bstos/2.2.5.3/sysroots/x86_64-bstsdk-linux/usr/sbin:
/opt/bstos/2.2.5.3/sysroots/x86_64-bstsdk-linux/bin:
/opt/bstos/2.2.5.3/sysroots/x86_64-bstsdk-linux/sbin:
...:
/usr/local/bin:
/usr/local/sbin:
/sbin:
/bin:
/usr/local/src/jkd/jdk1.8.0_261/bin
环境变量 PATH 的作用

定义命令行解释器搜索用户执行命令的路径

规定系统中的可执行文件的位置。

只要是处于这些位置中的可执行文件,执行的时候就不需要指定路径,直接执行即可。

什么是命令行解释器?

参考链接

https://blog.csdn.net/weixin_53351797/article/details/126720897

如何设置 环境变量 PATH

设置 PATH(在其原有的路径的基础上,增添一个路径,例如/home/gec)

(1) 临时设定 PATH

所谓临时,指的是关闭终端之后就失效

root@ubuntu:~$ export PATH=${PATH}:/home/luxy
(2) 永久设定 PATH

将语句 PATH=$PATH:/home/gec 添加到文件 ~/.bashrc 的末尾

root@ubuntu:~$sudo gedit ~/.bashrc

这样就可以永久设定PATH(注:其他变量不能乱该)。

由此,可知知道,当执行命令

protoc 

时,系统会优先从 环境变量 PATH 中的路径中寻找 protoc 可执行文件。

/opt/bstos/2.2.5.3/sysroots/x86_64-bstsdk-linux/usr/bin:

中找到了 protoc 的可执行文件。那么就不会继续往下找。

把第一个找到 protoc 的可执行文件当做默认执行的文件夹。

所以,为什么 which protoc 显示的是

/opt/bstos/2.2.5.3/sysroots/x86_64-bstsdk-linux/usr/bin/protoc

所以,为什么编译从 git 下载 3.12.2 版本的 protobuf 源码后,没有升级protoc。

通过 file 查看

file /opt/bstos/2.2.5.3/sysroots/x86_64-bstsdk-linux/usr/bin/protoc

显示

ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /opt/bstos/2.2.5.3/sysroots/x86_64-bstsdk-linux/lib/ld-linux-x86-64.so.2, ...

通过 file 查看

file /home/project/protobuf-3.12.3/cmake/build/protoc

终端显示

protoc:symbolic link to proto-3.12.3.0

再执行

file proto-3.12.3.0

终端显示

protoc-3.12.3.0:ELF 64-bit LSB executable, ARM aarch64, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-aarch64.so.1, ...

参考链接:https://blog.csdn.net/qq_44986938/article/details/106288159

http://www.hrbkazy.com/news/34793.html

相关文章:

  • 网站空间购买哪个好网站页面优化方法
  • 外贸网站建设需要注意什么推广引流渠道
  • 室内设计师做单网站咸阳网站建设公司
  • 外贸网站域名能用cn做后缀吗搜索引擎优化的实验结果分析
  • 网站制作公司商丘市北京网站制作推广
  • 网站设计与实现seo快速排名上首页
  • 无锡做公司网站河南关键词排名顾问
  • 南昌做网站比较好的公司百度推广登陆后台
  • 网站制作厦门公司爱战网关键词挖掘
  • 做门户网站的公司有哪些宁德市蕉城区疫情
  • 唐山APP小程序网站开发友情链接交换网站
  • 做经营性网站需要哪些东西排名查询
  • 做网站如何添加视频天津百度推广公司
  • 百度 网站建设网络营销师报考条件
  • 网站建设框架什么是关键词举例说明
  • 怎么做军事小视频网站怎样推广自己的产品
  • 天津网站建设网页设计公司网络营销服务企业有哪些
  • 外贸网站建设软件有哪些百度推广代理加盟
  • 邹城网站建设zczwxx媒体公关是做什么的
  • wordpress静态设置搜索引擎优化的内部优化
  • 伊春网站优化百度推广用户注册
  • asp做微网站免费网站推广2023
  • html5经管网站模板百度收录什么意思
  • 最好的建设网站站长工具seo推广 站长工具查询
  • 有什么可靠的网站站长之家 站长工具
  • 哪家做外贸网站好h5网站制作平台
  • 陕西 网站建设首选公司环球资源网官方网站
  • 网站上怎么做动画广告视频html网页模板
  • wordpress add_editor_styleseo优化网站推广专员招聘
  • 正规代加工肇庆百度快照优化