00 Linux内核及发行版
- linux内核版本
内核是系统的心脏,是运行程序和管理像磁盘和打印机等硬件设备的核心程序,它提供了一个在裸设备与应用程序间的抽象层。
linux内核封装了系统调用和终端命令供访问硬件所使用。
- linux发行版
是包含了linux内核的,通过linux内核的系统调用可以直接访问硬件,而不一定需要终端程序。通常包含了包括桌面环境、办公套件、媒体播放器、数据库等应用软件。
常见发行版有:ubuntu、redhat、fedora、openSUSE、linux mint、debian、centos、arch…
01 七个常用命令
ls list
命令 | 对应英文 | 作用 |
---|---|---|
ls | list | 查看当前文件夹下的内容 |
pwd | print work directory | 查看当前所在文件夹 |
cd[目录名] | change directory | 切换文件夹 |
touch[文件名] | touch | 如果文件不存在,新建文件 |
mkdir[目录名] | make directory | 创建目录 |
rm[文件名] | remove | 删除指定的文件名 |
clear | clear | 清屏 |
小技巧:
ctrl+shift+=:放大终端窗口的字体显示
ctrl±:缩小终端窗口的字体显示
cd
02 终端命令格式
command [-options] [parameter]
- command:命令名,相应功能的英文单词或单词的缩写
- [-options]:选项,可用来对命令进行控制,也可以省略。
- parameter:传给命令的参数,可以是零个、一个或多个
- []:选项的意思
查命令帮助信息:
command --help
man command
man是manual的缩写,是linux提供的一个手册,包含了绝大部分的命令、函数和详细使用说明。
使用man时的操作键:
空格:显示手册的下一屏
enter:一次滚动手册页的一行
b:回滚一屏
f:前滚一屏
q:退出
一个. :表示当前目录
两个… :表示上级目录
以点“.”开头的文件为隐藏文件
03 命令大全
1、ls命令
ls命令常用选项
-a 显示目录下所有子目录与文件,包括隐藏文件
-l 以列表方式显示文件的详细内容
-h 配合-l使用,以kb显示文件的大小
计算机中文件大小的表示方式(科普)
通配符的使用
2、cd命令
cd是change directory的缩写,其功能是更改当前的工作目录。
注意:linux所有的目录和文件名都是大小写敏感的。
命令 | 含义 |
---|---|
cd | 切换到当前用户的主目录(/home/用户目录) |
cd ~ | 切换到当前用户的主目录(/home/用户目录) |
cd . | 保持在当前目录不变 |
cd . . | 切换到上级目录 |
cd - | 可以在最近两次工作目录之间来回切换 |
相对路径与绝对路径
相对路径:在输入路径时,最前面不是/或者~,表示相对当前目录所在的目录位置。
绝对路径:在输入路径时,最前面是/或者~,表示从根目录/家目录开始的具体目录位置
3、touch命令
创建文件或修改文件时间
- 如果文件不存在,可以创建一个空白文件
- 如果文件已经存在,可以修改文件的末次修改日期。
4、mkdir命令
创建一个新的目录
选项 | 含义 |
---|---|
-p | 可以递归创建目录(例如:mkdir -p a1/a2 a2为a1的子目录) |
(新建目录的名称不能与当前目录中已有的目录或文件同名)
5、rm命令
删除文件或目录,删除后不能恢复。
选项 | 含义 |
---|---|
-f | 强制删除,忽略不存在的文件,无需提示 |
-r | 递归地删除目录下的内容,删除文件夹时必须加此参数 |
6、tree命令
tree命令可以以树状图列出文件目录结构
tree [目录名]:只显示指定目录的文件目录结构
选项 | 含义 |
---|---|
-d | 只显示目录 |
7、cp命令
cp命令的功能是将给出的文件或目录复制到另一个文件或目录中
选项 | 含义 |
---|---|
-i | 覆盖文件前提示 |
-r | 若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目录文件必须为一个目录名。 |
8、mv命令
mv [源文件] [目标文件]
mv命令可以用来移动文件或目录,也可以给文件或目录重命名。
选项 | 含义 |
---|---|
-i | 覆盖文件前提示 |
9、cat命令
cat即concatenate:用来查看文件内容、创建文件、文件合并、追加文件内容等功能。
cat会一次显示所有的内容,适合查看内容较少的文本文件。
选项 | 含义 |
---|---|
-b | 对非空输出行编号 |
-n | 对输出的所有行编号 |
linux中还有一个nl的命令和cat -b的效果等价
10、more命令
适合用于分屏显示文本内容,每次只显示一页内容。
使用more命令的操作键:
操作间 功能
空格键 显示手册页的下一屏
enter键 一次滚动手册页的一行
b 回滚一屏
f 前滚一屏
q 退出
/word 搜索word字符串
11、grep命令
grep命令是一种强大的文本搜索命令
选项 | 含义 |
---|---|
-n | 显示匹配行及行号 |
-v | 显示不包括匹配文本的所有行(相当于求反) |
-i | 忽略大小写 |
常用两个模式查找:
^a:行首,搜索以a开头的行
ke$:行尾,搜索以ke结束的行
12、其他命令
- echo命令
会在终端中显示参数指定的文字,通常会和重定向联合使用。
例如:echo hello python > 123.txt - 重定向>和>>
linux允许将命令执行结果重定向到一个文件中。
将本应该显示在终端的内容 输出/追加 到指定的文件中。
例如:ls -lh > 123.txt
tree ~ >> 123.txt
“>”:表示输出,会覆盖文件原来的内容。
“>>”:表示追加,会将内容追加到已有文件的末尾。
- 管道 |
一个命令的输出 可以通过管道 作为 令一个命令的输入。
常用管道命令有:
more:分屏显示内容。
grep:在命令执行结果的基础上查询指定的文本。
例如:ls -lha ~ | more
ls -lha ~ | grep Do