8种机械键盘轴体对比
本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?
文章目录
请注意:本文编写于 2018-07-05,其中某些信息可能已经失去时效性。
常用命令
格式:[功能:命令] -> [内部功能:命令]注销:exit
显示目前所支持的语言:echo $LANG
显示日期与时间:date
显示日历:cal
简单好用的计算器:bc -> 退出:quit 取几位小数:scale=
更多在线命令手册:man -> 查找:/
数据同步写入磁盘(关机前必备):sync
惯用的关机命令:shutdown
重启:reboot,halt,poweroff
切换执行等级:init
改变文件所属用户组:chgrp -> -R:连同目录下的所有文件、目录
改变文件所有者:chown -> -R:连同目录下的所有文件、目录
改变文件的权限:chmod -> -R:连同目录下的所有文件、目录
复制文件: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 文件属性
上图为 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!
Linux 文件种类与扩展名
文件种类
- :普通文件
d :目录
l :连接文件(类似于 Windows 下的快捷方式)
b :块设备文件(例如硬盘、软盘等)
c :字符设备文件(例如鼠标、键盘等,特征:一次性读取)
s :套接字,数据接口文件(通常被用在网络上的数据连接)
p :管道(FIFO,pipe),主要用于解决多个程序同时访问一个文件所造成的错误
Linux 目录配置
Linux 目录配置标准:FHS(Filesystem Hierarchy Standard)
FHS 依据档案系统使用的频繁与否与是否允许使用者随意更动,而将目录定义成为四种交互作用的形态,用表格来说有点像底下这样:
可分享的:可以分享给其他系统挂载使用的目录,所以包括执行档与使用者的邮件等数据,是能够分享给网络上其他主机挂载用的目录;
不可分享的:自己机器上面运作的装置档案或者是与程序有关的 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 之类的指令下达方式,就是代表上一层与目前所在目录的工作状态!
目录与路径
目录的相关操作