linux文件前面多两个点,Linux 学习笔记

66b52468c121889b900d4956032f1009.png

8种机械键盘轴体对比

本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?

文章目录

请注意:本文编写于 2018-07-05,其中某些信息可能已经失去时效性。

常用命令

格式:[功能:命令] -> [内部功能:命令]注销:exit

显示目前所支持的语言:echo $LANG

显示日期与时间:date

显示日历:cal

简单好用的计算器:bc -> 退出:quit 取几位小数:scale=

更多在线命令手册:man -> 查找:/

数据同步写入磁盘(关机前必备):sync

惯用的关机命令:shutdown

重启:reboot,halt,poweroff

37.png

38.png切换执行等级:init

39.png改变文件所属用户组:chgrp -> -R:连同目录下的所有文件、目录

改变文件所有者:chown -> -R:连同目录下的所有文件、目录

改变文件的权限:chmod -> -R:连同目录下的所有文件、目录

42.png

41.png复制文件:cp

切换用户身份:su

新建新目录:mkdir

新建空文件:touch

连接文件并在终端输出文件内容:cat

常用热键

格式:[热键:功能]Tab :命令补全、文件补齐

Ctrl + c :终止

Ctrl + d :输入(输出)结束,也可以代替 exit

命令行基础

command(命令) -options(选项) parameter1(参数1) parameter2(参数2)一行命令中第一个输入的部分绝对是 [命令(command)]或[可执行文件];

命令、选项、参数等这几个命令中间以空格来区分,不论几个空格 shell 都视为一个;

按下 Enter 后命令立即执行,Enter 按键代表一行命令的开始启动;

命令太长的时候,可以用反斜杠()来转义 Enter 符号,使命令持续到下一行。

用户与用户组

Linux 用户身份与用户组记录的文件

在 Linux 系统当中,预设的情况下,所有的系统上的帐号与一般身份使用者,还有 root 的相关资讯,都是记录在 /etc/passwd 这个文件内的。至于个人的密码则是记录在 /etc/shadow 这个文件下。此外,Linux 所有的群组名称都纪录在 /etc/group 内!这三个文件可以说是 Linux 系统里面帐号、密码、群组信息的集中地啰!不要随便删除这三个文件啊!

Linux 文件权限概念

Linux 文件属性

40.png

上图为 root 用户终端输入 ls -al 后终端输出结果

第一列:代表这个文件的类型与权限(permission):

这个地方最需要注意了!仔细看的话,你应该可以发现这一栏其实共有十个字元:

第一个字元代表这个文件是目录、文件或连接档等等:当为 d 则是目录,例如上表文件名为 .config 的那一行;

当为 - 则是文件,例如上表文件名为 initial-setup-ks.cfg 那一行;

若是 l 则表示为连接档(link file);

若是 b 则表示为装置档里面的可供储存的周边设备(可随机存取装置);

若是 c 则表示为装置档里面的序列端口设备,例如键盘、鼠标(一次性读取装置)。

接下来的字元中,以三个为一组,且均为 rwx 的三个参数的组合。其中, r 代表可读(read)、 w 代表可写(write)、 x 代表可执行(execute)。要注意的是,这三个权限的位置不会改变,如果没有权限,就会出现减号 - 而已:第一组为文件拥有者可具备的权限,以 initial-setup-ks.cfg 那个文件为例,该文件的拥有者可以读写,但不可执行;

第二组为加入此群组之帐号的权限;

第三组为非本人且没有加入本群组之其他帐号的权限。

第二列:表示有多少文件名连接到此节点(i-node);

第三列:表示这个文件(或目录)的拥有者帐号;

第四列:表示这个文件的所属群组;

第五列:为这个文件的容量大小,预设单位为 bytes;

第六列:为这个文件的建档日期或者是最近的修改日期;

第七列:为该文件名(若文件名前面多了一个 . 则表示该文件为隐藏文件);

目录与文件的权限意义

权限对文件的重要性

文件是实际含有数据的地方,包括一般文字文件、数据库内容文件、二进位可执行文件(binary program)等等。因此,权限对于文件来说,他的意义是这样的:

r(read):可读取此一文件的实际内容,如读取文字文件的文字内容等;

w(write):可以编辑、新增或者是修改该文件的内容(但不含删除该文件);

x(execute):该文件具有可以被系统执行的权限。

可读(r)代表读取文件内容是还好了解,那么可执行(x)呢?这里你就必须要小心啦!因为在 Windows 底下一个文件是否具有执行的能力是是由扩展名来判断的,例如:.exe,.bat,.com 等等,但是在 Linux 底下,我们的文件是否能被执行,则是是由是否具有 x 这个权限来决定的!跟文件名是没有绝对的关系的!

当你对一个文件具有 w 权限时,你具有写入/编辑/新增/修改文件的内容的权限,但并不具备有删除该文件本身的权限!对于文件的 rwx 来说,主要都是针对文件的内容而言,与文件文件名的存在与否没有关系!因为文件记录的是实际的数据!

注意:一个文件有可执行权限不代表这个文件就一定能被执行成功,还需要看文件内有没有可以被执行的内容!

权限对目录的重要性

目录主要的内容在记录文件名清单,文件名与目录有强烈的关连!所以如果是针对目录时,rwx 是什么意义呢?

1. r: read contents in directory:

表示具有读取目录结构清单的权限,所以当你具有读取(r)一个目录的权限时,表示你可以查询该目录下的文件名数据。所以你就可以利用 ls 这个指令将该目录的内容列表显示出来!

2. w: modify contents of directory:

这个可写入的权限对目录来说,是很了不起的!因为他表示你具有异动该目录结构清单的权限,也就是底下这些权限:建立新的文件与目录;

删除已经存在的文件与目录(不论该文件的权限为何!)

将已存在的文件或目录进行更名;

搬移该目录内的文件、目录位置。

总之,目录的 w 权限就与该目录底下的文件名异动有关就对了啦!

3. x: access directory:

目录只是记录文件名而已,不可以被执行,目录的 x 代表的是使用者能否进入该目录成为工作目录!所谓的工作目录(work directory)就是你目前所在的目录啦!举例来说,当你登入 Linux 时,你所在的目录就是你当下的工作目录。而变换目录的指令是 cd: change directory!

43.png

Linux 文件种类与扩展名

文件种类

- :普通文件

d :目录

l :连接文件(类似于 Windows 下的快捷方式)

b :块设备文件(例如硬盘、软盘等)

c :字符设备文件(例如鼠标、键盘等,特征:一次性读取)

s :套接字,数据接口文件(通常被用在网络上的数据连接)

p :管道(FIFO,pipe),主要用于解决多个程序同时访问一个文件所造成的错误

Linux 目录配置

Linux 目录配置标准:FHS(Filesystem Hierarchy Standard)

FHS 依据档案系统使用的频繁与否与是否允许使用者随意更动,而将目录定义成为四种交互作用的形态,用表格来说有点像底下这样:

44.png

可分享的:可以分享给其他系统挂载使用的目录,所以包括执行档与使用者的邮件等数据,是能够分享给网络上其他主机挂载用的目录;

不可分享的:自己机器上面运作的装置档案或者是与程序有关的 socket 档案等,由于仅与自身机器有关,所以当然就不适合分享给其他主机了。

不变的:有些数据是不会经常变动的,跟随着 distribution 而不变动。例如函式库、文件说明档、系统管理员所管理的主机服务设定档等等;

可变动的:经常改变的数据,例如登录档、一般用户可自行收受的新闻组等。

事实上,FHS 针对目录树构架仅定义出三层目录底下应该放置什么数据而已,分别是底下这三个目录的定义:

/:root,根目录,与开机系统有关

/usr:unix software resource,与软件安装/执行有关

/var:variable,与系统运作过程有关

绝对路径与相对路径

除了需要特别注意的 FHS 目录配置外,在文件名部分我们也要特别注意!因为根据文件名写法的不同,也可将所谓的路径(path)定义为绝对路径(absolute)与相对路径(relative)。这两种文件名/路径的写法依据是这样的:

绝对路径:由根目录(/)开始写起的文件名或目录名称,例如 /home/dmtsai/.bashrc;

相对路径:相对于目前路径的文件名写法。例如:./home/dmtsai 或 ../../home/dmtsai/ 等等。反正开头不是 / 就属于相对路径的写法

而你必须要了解,相对路径是以你当前所在路径的相对位置来表示的。举例来说,你目前在 /home 这个目录下,如果想要进入 /var/log 这个目录时,可以怎么写呢?

绝对路径:cd /var/log

相对路径:cd ../var/log

因为你在 /home 底下,所以要回到上一层(../)之后,才能继续往/var来移动的!特别注意这两个特殊的目录:

.:代表当前的目录,也可以使用 ./ 来表示;

..:代表上一层目录,也可以 ../ 来代表。

. 与 .. 目录概念是很重要的,你常常会看到 cd .. 或 ./command 之类的指令下达方式,就是代表上一层与目前所在目录的工作状态!

目录与路径

目录的相关操作

45.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值