目录
1.写在前面
2.权限
3.file命令
4.基础开发工具
1.软件包管理器
5.编辑器vim
1.写在前面
我们在上一讲解中讲解了权限是人+事物属性,还知道了拥有者所属组其他人这三个概念,知道了33一组,rwx分别代表什么。那么下面我们继续进行权限的讲解并了解Linux下基础的开发工具吧。
2.权限
我们知道了文件的权限rwx分别代表读写执行,但是目录的权限rwx分别代表什么呢?
我们知道Linux下一切皆文件,所以目录也是一个文件,但是它和我们普通的文件不一样,目录是可以存目录和文件,所以我们了解一下目录的rwx权限分别是什么
目录的w代表用户是否可以修改或者删除执行目录下的文件。
x代表我们是否可以进入目录。
r代表我们是否可以查看这个目录。
我们普通用户可以在自己创建的目录下删除root账户创建的文件?有的同学就要问了,root不是拥有最高权限吗?你怎么能删除root创建的文件呢?root不是不受权限的制约吗?这个问题反过来想,你的root凭什么在我的目录下创建文件呢?
普通用户的家目录只有自己和root能够进入,其他人进入需要密码。
但是如果我想要多个普通账号进行数据共享呢?
那么由于我普通用户只能进入自己的家目录不能进入别人的家目录所以我们不能在普通用户的目录下创建一个目录进行共享。
所以我们得让root在公共目录下,普通人以other身份实现数据共享。但是问题来了上面我们讲了删除目录只需要有w的权限就可以,那我在这个目录下创建一个文件,但是别人可以随意删除这不是不行吗?那么如果我们不想让别人删除我们的文件呢?
我们可以去掉other的w权限,但是与此同时我们也不能新建文件了,这也不行。
那么我们怎么样做到自己既能新建文件,但是不能让别人删除我的文件呢?
这里现有的方法我们还欠缺,所以我们引入了粘滞键来解决这个问题,这样做的效果就是只有文件的拥有者和root可以删除文件,其他人删不掉
所以通过粘滞位我们就解决了我们担心的别人误删自己文件的误操作了。
3.file命令
file +filename 我们可以查看这个文件更详细的信息。
4.基础开发工具
1.软件包管理器
Linux下我们如何进行软件安装,查找下载呢?
1.我们可以进行源代码安装。
2.我们rpm安装方式安装包的本质就是把源代码在windows下编译好,然后打包,但问题是我们有些软件是存在依赖关系的,就需要我们人工去解决,对我们初学的人十分不友好。
3.所以我们使用yum、apt工具级安装,不仅会把软件给你安好,还会把依赖关系给你解决。
相当于我们的应用商店。这就对我们新人十分友好,不然很有可能出现去百度搜索下载下载一大堆垃圾软件的情况。
有一个问题是我们安卓上有人来开发软件上架应用商店是因为它们能够从中获利,但是Linux呢?
Linux的软件也是由开发者或者公司开发的,Linux是开源的,这些开发者凭什么给我们来开发软件呢?比如ls这些指令等等。
那是因为生态问题,Linux的软件生态问题,一个操作系统的好与坏并不是从单一角度去评价的,而是多方来决定的,比如我们的社区论坛,官网文档,软件体系,维护更新速度,操作系统自身,富有针对性的客户群体,这些都是非常重要的因素,不如针对工作员的Linux就是centos,针对学生群体就有别的对应的系统。
开发软件和操作系统的人需要做好这些方面,他需要去维护官网论坛,去更新操作系统自身,去构建对应的软件体系,去明白自己针对的客户群体。
比如最近非常火的华为鸿蒙系统,其实不仅仅是单纯的操作系统之争,背后更大的其实还是操作系统的生态之争。
所以人们就愿意去付费使用,企业得以盈利,又能有动力开发出越来越好得软件。
我们还需要了解我们下载的软件到底是怎么回事。
首先我们要知道,安装软件要以超级用户的身份进行安装,拷贝下来的软件到指定的目录下。
现在我们的AI十分发达我们可以去问AI来帮助我们。
那么我们怎么知道我们要下载那些软件?哪些软件有啥功能?这些都是由需求驱动的。
我们的软件都是在远端的,原来我们的软件包都是在国外的服务器,但是国内正常情况无法访问外网,所以我们一些企业和学习就把国外的镜像在国内搭建,所以我们安装就是,查找发送下载请求,然后进行下载返回。我们之所能快速找到软件包的位置是因为我们配置文件存在下载链接。
5.编辑器vim
vim是一个编辑器,多模式的编辑器,它有多种模式,现在我们先介绍三种模式,分别是命令模式,插入模式,底行模式。
它们之间的切换都是按esc退回命令模式然后再按相应按键进行切换。
退出按shift+;其实就是:。切换到底行模式,按q退出。
打开的话就是vim +filename
快捷键退出并保存:shifit+zz
vim code.c+4.打开的时候光标在第4行,这个的话当我们文件有错误时报错会报行数,我们直接进行定位即可。
命令模式下,键盘文件的输入默认被当命令来对待。
yy是复制,p是粘贴。
50+p是粘贴50次
5=yy是复制5行。
这里说明一下几乎所有vim的命令下,我们几乎都可以在命令前+数字,进行相应次数的操作。
示范一下:
gg是定位到最开始,shift+g是定位到结尾。
定位到任意一行是:n+shift+g 定位到第n行。
我们这是行之间移动。那我在一行怎么进行列移动,shift+6当前行开头,shift+4行结尾。
hjkl是上下左右移动。
h左移,j下移,k上移,l是右移。