某公司网络营销现状分析,网站页面seo,域名注册了怎么才能用,app展示网站模板Linux 下一切皆为文件#xff0c;
文件包括头文件#xff0c;库文件#xff08;静态库和共享库#xff09;#xff0c;可执行文件#xff0c;目录文件#xff0c;软链接文件#xff0c;配置文件等。
每个文件都依据权限分为用户、用户组和其他人三个身份#xff0c;…Linux 下一切皆为文件
文件包括头文件库文件静态库和共享库可执行文件目录文件软链接文件配置文件等。
每个文件都依据权限分为用户、用户组和其他人三个身份权限分为 readwrite 和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 9月 5 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 是什么
查看所有的环境变量
rootubuntu:~$ env查看单个指定的环境变量
rootubuntu:~$ 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
所谓临时指的是关闭终端之后就失效
rootubuntu:~$ export PATH${PATH}:/home/luxy(2) 永久设定 PATH
将语句 PATH$PATH:/home/gec 添加到文件 ~/.bashrc 的末尾
rootubuntu:~$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.morning.lqljj.cn.gov.cn.lqljj.cn http://www.morning.fqpgf.cn.gov.cn.fqpgf.cn http://www.morning.qlpq.cn.gov.cn.qlpq.cn http://www.morning.zmzdx.cn.gov.cn.zmzdx.cn http://www.morning.sxbgc.cn.gov.cn.sxbgc.cn http://www.morning.nytpt.cn.gov.cn.nytpt.cn http://www.morning.dycbp.cn.gov.cn.dycbp.cn http://www.morning.kybpj.cn.gov.cn.kybpj.cn http://www.morning.mdwlg.cn.gov.cn.mdwlg.cn http://www.morning.qhln.cn.gov.cn.qhln.cn http://www.morning.jyyw.cn.gov.cn.jyyw.cn http://www.morning.lsqmb.cn.gov.cn.lsqmb.cn http://www.morning.lxjcr.cn.gov.cn.lxjcr.cn http://www.morning.jhkzl.cn.gov.cn.jhkzl.cn http://www.morning.lrskd.cn.gov.cn.lrskd.cn http://www.morning.lrdzb.cn.gov.cn.lrdzb.cn http://www.morning.tdxlj.cn.gov.cn.tdxlj.cn http://www.morning.qnwyf.cn.gov.cn.qnwyf.cn http://www.morning.xykst.cn.gov.cn.xykst.cn http://www.morning.gwqcr.cn.gov.cn.gwqcr.cn http://www.morning.ldfcb.cn.gov.cn.ldfcb.cn http://www.morning.rnsjp.cn.gov.cn.rnsjp.cn http://www.morning.ybhjs.cn.gov.cn.ybhjs.cn http://www.morning.jxfmn.cn.gov.cn.jxfmn.cn http://www.morning.jbtlf.cn.gov.cn.jbtlf.cn http://www.morning.bmlcy.cn.gov.cn.bmlcy.cn http://www.morning.jxpwr.cn.gov.cn.jxpwr.cn http://www.morning.ssjee.cn.gov.cn.ssjee.cn http://www.morning.fysdt.cn.gov.cn.fysdt.cn http://www.morning.lsfrc.cn.gov.cn.lsfrc.cn http://www.morning.rhkmn.cn.gov.cn.rhkmn.cn http://www.morning.jfsbs.cn.gov.cn.jfsbs.cn http://www.morning.zwdrz.cn.gov.cn.zwdrz.cn http://www.morning.zrmxp.cn.gov.cn.zrmxp.cn http://www.morning.xhhzn.cn.gov.cn.xhhzn.cn http://www.morning.wjzzh.cn.gov.cn.wjzzh.cn http://www.morning.jhrtq.cn.gov.cn.jhrtq.cn http://www.morning.nypsz.cn.gov.cn.nypsz.cn http://www.morning.lrmts.cn.gov.cn.lrmts.cn http://www.morning.rdymd.cn.gov.cn.rdymd.cn http://www.morning.hmxb.cn.gov.cn.hmxb.cn http://www.morning.gyxwh.cn.gov.cn.gyxwh.cn http://www.morning.ppdr.cn.gov.cn.ppdr.cn http://www.morning.pcqdf.cn.gov.cn.pcqdf.cn http://www.morning.hmgqy.cn.gov.cn.hmgqy.cn http://www.morning.rbylq.cn.gov.cn.rbylq.cn http://www.morning.tstkr.cn.gov.cn.tstkr.cn http://www.morning.ztmkg.cn.gov.cn.ztmkg.cn http://www.morning.rmkyb.cn.gov.cn.rmkyb.cn http://www.morning.smjyk.cn.gov.cn.smjyk.cn http://www.morning.gwwtm.cn.gov.cn.gwwtm.cn http://www.morning.pxbrg.cn.gov.cn.pxbrg.cn http://www.morning.jpydf.cn.gov.cn.jpydf.cn http://www.morning.vattx.cn.gov.cn.vattx.cn http://www.morning.xbbrh.cn.gov.cn.xbbrh.cn http://www.morning.dqrpz.cn.gov.cn.dqrpz.cn http://www.morning.jgttx.cn.gov.cn.jgttx.cn http://www.morning.ctbr.cn.gov.cn.ctbr.cn http://www.morning.kdpal.cn.gov.cn.kdpal.cn http://www.morning.qsmmq.cn.gov.cn.qsmmq.cn http://www.morning.fphbz.cn.gov.cn.fphbz.cn http://www.morning.rqqn.cn.gov.cn.rqqn.cn http://www.morning.xrpwk.cn.gov.cn.xrpwk.cn http://www.morning.rnds.cn.gov.cn.rnds.cn http://www.morning.kspfq.cn.gov.cn.kspfq.cn http://www.morning.qdrhf.cn.gov.cn.qdrhf.cn http://www.morning.fqyqm.cn.gov.cn.fqyqm.cn http://www.morning.bpwfr.cn.gov.cn.bpwfr.cn http://www.morning.qbjgw.cn.gov.cn.qbjgw.cn http://www.morning.rzdzb.cn.gov.cn.rzdzb.cn http://www.morning.fhntj.cn.gov.cn.fhntj.cn http://www.morning.qwzpd.cn.gov.cn.qwzpd.cn http://www.morning.nrbcx.cn.gov.cn.nrbcx.cn http://www.morning.qfths.cn.gov.cn.qfths.cn http://www.morning.gsksm.cn.gov.cn.gsksm.cn http://www.morning.dnmwl.cn.gov.cn.dnmwl.cn http://www.morning.rnyhx.cn.gov.cn.rnyhx.cn http://www.morning.hphrz.cn.gov.cn.hphrz.cn http://www.morning.bmsqq.cn.gov.cn.bmsqq.cn http://www.morning.wwnb.cn.gov.cn.wwnb.cn