LINUX学习笔记——基础篇

mac2023-02-01  15

1.文件权限

LINUX是个多用户、多任务的系统,通常有多个用户同时使用这台主机进行工作,因此也就有了文件所有者(owner)、用户组(group)和其他组(others)的概念。每个用户都有自己的隐私,隐私转存成文件后,用户就成了这些文件的文件所有者;用户组是针对于团队开发资源来说的,比如team1有成员a、b、c,team2有成员d、e、f,abc属于同一个用户组team1,组内成员资源共享,对于其他组成员,资源不共享,因此我们只需要对文件的用户组和其他组设置适当的权限即可。 上图第一列代表文件的类型与权限,其中第一个字母代表文件类型,d代表目录,-代表文件。接下来每三个字母为一组,第一组代表文件所有者的权限,第二组代表同用户组的权限,第三组代表其他组的权限,其中r代表可读,w代表可写,x代表可执行。 以图中build.txt文件为例,将其中10个字母分开查阅,第一个字符为-,代表它是文件,第一组所有者权限为可读可写(rw),第二组同用户组权限为可读( r ),第三组其他组权限为可读( r )。 文件权限更改一般用以下三种方法: 1)chgrp——改变用户组; 2)chowm——改变文件所有者; 3)chmod——改变文件权限; 着重说一下chmod的用法,我们会用数字代表文件的各个权限,对照表如下:

r:4

w:2

x:1 每种身份对应的权限是要累加的,比如之前说的buil.txt文件的权限为rw-r–r--,分数则是:

owner=rw-=4+2+0=6

group=r–=4+0+0=4

others=r–=4+0+0=4 所以我们可以执行chmod 777 build.txt来让文件权限变为rwxrwxrwx。

2.文件和目录管理

本篇开始之前,必须要提绝对路径和相对路径两个概念。 绝对路径:写法一定由根目录开始,例如/usr/bin 相对路径:对于当前工作目录的路径。

2.1 目录基本操作

目录操作一般是下面4个命令:

cd——切换目录 此命令最常用的用法为 cd [相对路径或者绝对路径] cd .. 代表回到上级目录 cd ~ 代表回到个人目录的主文件夹,也就是我们刚登陆时的那个文件夹 小提示:输入路径的时候可以用tab键自动补全哦pwd——显示当前目录 直接输入pwd命令即可显示当前的工作目录 pwd -p命令显示正确的完整路径,而不是只显示链接文件mkdir——新建一个新的目录 常用用法 mkdir [-mp] 目录名称 -p代表创建多级目录,例如 mkdir -p test1/test2/test3 -m代表新建特定权限的目录,例如 mkdir -m 777 test1rmdir——删除一个空的目录 注意,rmdir命令只能删除空目录,如果要删除多级空目录,只需要加上-p就行了 例:rmdir -p test1/test2/test3

2.2 文件操作

查看文件与目录——ls ls -l : 列出长数据串,包含文件权限时间等信息,有时也用 ll 来代替 ls -a : 列出全部文件,包含隐藏文件

复制、删除与移动

cp [-air] 源文件 目标文件 -a 代表复制源文件的全部属性,复制后两个文件一模一样 -i 若目标文件已存在,在覆盖时会先询问 -r 递归复制,常用于目录的复制行为

rm [-fir] 文件或者目录 -f 强制删除,不会告警 -i 互动模式,删除前会询问用户 -r 递归删除,常用于删除目录

mv [-fiu] source destination -f 源文件存在时,不询问直接覆盖 -i 恰恰相反,会询问用户 -u 若目标文件存在,且源文件比较新,才会更新

文件内容查阅——cat cat [-n] 文件 从第一行开始显示文件内容,-n代表打印出行号,空白行也会有行号。 tac反向查看文件,从最后一行开始查看,可以发现,tac就是cat反过来写。 此外还有more和less命令可以翻页查看文件。

3.文件默认权限及隐藏属性

3.1文件默认权限

一般用户创建文件默认权限为-rw-rw-rw-(666),创建目录权限为drwxrwxrwx(777),而umask可以指定新建文件或目录时的权限默认值,比如umask为002,则: 新建文件时:(-rw-rw-rw-) - (-----w–w-) ==> -rw-r–r-- 新建目录时:(drwxrwxrwx) - (-----w–w-) ==> drwxr-xr-x 当然我们也可以修改umask来更改指定的权限默认值,例如umask 022

3.2文件隐藏属性

设置隐藏属性:chattr [+ - =] [a i] 文件或目录名称 +a 代表文件只能增加数据,不能删除数据 +i 代表文件不能删除,也不能写入或添加数据,对系统安全有很大帮助。

显示隐藏属性:lsattr [-adR] 文件或目录

4.文件查找

file 查看文件类型。 which用来查找命令完整文件名, which [-a] command whereis、locate、find都是用来查找文件,whereis用来查找特定文件,locate类似于模糊匹配,查找包含关键词的所有文件。前两个命令都是去数据库文件里面找,find则是直接去硬盘里面查找,速度相对较慢。 备注:Linux系统会将所有文件记录在一个数据库文件里面,该数据库文件每隔一定时间进行更新。

5.文件压缩与解压缩——tar

压 缩: tar -jcv -f filename.tar.bz2 要被压缩的文件或目录查 询:tar -jtv -f filename.tar.bz2解压缩:tar -jxv -f filename.tar.bz2 -C 预解压的目录 简要介绍一下各参数的意义: -c:新建压缩文件 -t :查看压缩文件中的文件名 -x:解压缩,配合-C解压到特定目录 -j :通过bzip进行压缩/解压缩,文件名一般为 *.tar.bz2 -z :通过gzip进行压缩/解压缩,文件名一般为 *.tar.gz -v :压缩或解压缩过程中,将正在处理的文件名称显示出来 -f :要处理的文件

6.vim程序编辑器

一般Linux会内置vi文本编辑器,而vim则是高级版的vi,不仅具有程序编辑的能力,而且可以主动以字体颜色辨别语法的正确性,方便程序设计。

如上图所示,vi共分为3种模式,分别是一般模式、编辑模式和命令模式。

一般模式——可以移动光标,删除字符,复制粘贴。编辑模式——按下“i、a”等字符后进入编辑模式,此时才可以编辑文件内容,界面左下方会出现INSERT字样,按Esc退出编辑模式。命令模式——在一般模式输入“:、/、?”中任何一个按钮,光标会移动到最下面一行,此时可以进行查找数据,以及保存离开。 :wq 表示保存并离开,!代表强制操作,如q!不保存强制离开。
最新回复(0)