1. 虚拟机的使用
首先,我们需要启动虚拟机。分为两步,start之后虚拟机开启,但并没有显示出来。想要虚拟机界面显示,还需要view。此时,我们可以看到虚拟机登录界面显示如下:
选择用户,输入密码,即可进入桌面。如果想直接以超级用户的身份登入虚拟机,点击【not listed?】按钮,输入root及密码即可登入。或者我们以普通用户身份登入,在terminal界面再切换到root用户也是可以的。命令如下:
我们需要了解到,shell命令提示符中,“#”表示登陆的用户是系统超级用户,“$”表示登录到系统的是普通用户。上图中是“#”,表示我们当前的身份是超级用户。由于我们是从普通用户切换到超级用户,那么输入exit即可退出超级用户回到普通用户。
普通用户也可以平级切换到另一个普通用户,但是要养成习惯该身份使用完输入logout跳转到上一个普通用户,不要一直“su - 用户名”实现用户身份跳转。
如果使用完虚拟机,那就要使用下面的命令关闭虚拟机:
这里可能出现的错误情况有两个,需要注意一下。
1.虚拟机已经开启,我们又开启一遍,则会出现下面的报错:
2.虚拟机没有开启,或者说虚拟机开启之后又关闭了,然后我们view它,那无疑又会报错:
2. 基本命令的了解
掌握了虚拟机的开启与关闭之后,下面就可以接触一些较为简单的命令了。在学习命令之前,我们有必要先了解一下什么是linux中的文件路径。简单地讲,就是这个文件存放的地方。只要我们告诉系统某个文件的路径,系统就可以帮助我们找到这个文件。linux中,存在着绝对路径和相对路径。
绝对路径:
- 是文件在系统中的真实位置
- 路径的写法一定是由根目录/写起的
- 此路径在寻找文件时不会考虑当前所在的位置信息
相对路径:
- 相对于当前系统所在目录的一个文件名称的简写
- 此名称省略了系统当前所在目录的名称
- 路径的写法不是由根目录/写起的
下面学习一些简单的命令吧
【1】关于路径的命令
1. cd命令
功能:改变当前工作目录
格式:cd 目录名
比如:
- cd / 返回到根目录下
- cd … 返回到上一级目录下
2. pwd 命令
功能:显示当前所在工作目录的绝对路径。
3. ls命令
功能:显示指定工作目录下的内容,列出工作目录所含的文件及子目录。
格式:ls [选项] 路径或文件
说明:ls可以带很多参数,使这个命令的执行更加具体化。以下仅对常用的几个参数作以说明,其他参数需要用到时查询帮助文档即可。
常用选项:
【2】文件管理命令
4. touch命令
功能:用来改变文档或目录的日期时间,包括存取时间和更改时间。或者新建一个不存在的文件。
格式:touch [选项] 文件名
上面的命令简单解释一下,cd进入到Desktop文件中,ls显示该工作目录下的内容,发现Desktop文件下为空,touch新建一个名为file1的文件。再ls显示一次目录内容,发现Desktop文件下有一个file1文件。
5. mkdir命令
功能:用于创建目录
格式:mkdir [选项] 目录名称
常用选项:
- -p 创建级联目录,并且当创建一个已存在的目录时,不会报错。
在Desktop目录下再使用mkdir命令新建一个名为dir1的目录,ls显示Desktop目录下包含file1文件以及dir1子目录。
mkdir命令加-p选项可以创建级联目录,ls之后显示出Desktop下创建了新的子目录dir2,dir2里面包含子目录dir3,dir3里面又包含子目录dir4。
6. rmdir命令
功能:用于删除空目录(只能删除目录,不能删除文件)
格式:rmdir [选项] 目录名称
说明:rmdir和mkdir具有相同选项-p,同样可以级联删除一大串目录。但rmdir只能删除空目录,即使加上-p选项也只能删除一串空目录。
可以看到rmdir dir1后,Desktop下只剩下dir2子目录。
对dir2子目录使用同样的rmdir命令,此时报错“Directory not empty”。究其原因是,dir2目录里面包含子目录dir3,而dir3目录中包含dir4子目录,也就是说dir2不是一个空目录,而rmdir这个命令只能用于删除空目录,因此错误。想要解决这个问题,就要用到下面的命令。
7. rm命令
功能:用于删除某个目录及其下的所有文件及子目录。
格式:rm [选项] 文件或目录名称
常用选项:
- 使用“rm -rf”命令时一定要谨慎,因为一旦文件被删除,就不能被恢复。
8. cp命令
功能:复制文件或者目录
格式:cp [选项] 源文件或目录 目的文件或目录
常用选项:
9. mv命令
功能:对文件或目录重命名,或者将文件从一个目录移到另一个目录中。
格式:mv [选项] 源文件或目录 目标文件或目录
10. cat命令
功能:将文件的内容输出到标准输出,同时还可用于连接合并文件
格式:cat [选项] 文件名 或者 cat 文件1 文件2 > 文件3
11. less命令
功能:分页浏览,允许用户向前或者向后浏览文件,more只能向前浏览
格式:less [选项] 文件名
配合以下命令:
空格键 或者 【PageDown】 向下翻动一页
【PageUp】 向上翻动一页
q 退出
12. head命令
功能:显示指定文件的开头若干行
格式:head [选项] 文件名
比如:
- head file 查看file文件前10行
- head -n 5 file 查看file文件前5行
13. tail命令
功能:显示指定文件的末尾。不指定文件时,作为输入信息进行处理。常用于查看日志文件
格式:tail [选项] 文件名
比如:
- tail file 查看file文件后10行
- tai -n 5 file 查看file文件后5行
说明:使用选项-f可以很方便得查阅正在改变的日志文件。tail -f 文件名 这个命令会把文件最后内容显示出来,并不断刷新,因此用来监控文件内容的变化。
14. wc命令
功能:统计指定文件中的字节数、字数、行数,并将统计结果显示输出。
格式:wc [选项] 文件名
常用选项:
【3】系统中历史的调用
history 查看历史
histroy -c 清空当前环境中的历史
!数字 调用此行历史命令
第44行历史命令是ls,!44相当于直接执行ls
!关键字 执行以此关键字开头的最近一条历史
第45行历史命令是cat passwd,46行是cat -b passwd(显示行号)。执行!cat相当于执行以cat开头的最近一条历史命令,即cat -b passwd。
ctrl+r+关键字 调用历史中最近一条含有此关键字的历史
【4】在系统中获得帮助
1. whatis 命令 查看命令用途
2. 命令 --help 查看命令的基本用法,适用于多数命令
[ ] 表示选项可以加也可以不加
… 表示选项加入的个数任意
<> 表示选项是必须要加入的
Usage 标出命令用法
Options 对参数作用做说明
3.man 查看命令或者文件的说明手册
man 命令
man 5 文件
【5】系统的通配符
? 匹配单个字符
如上图所示,目前目录下有许多文件,下面就见识一下通配符的厉害。
[[:alpha:]] 匹配单个字母
通过匹配单个字母,删除对应的文件。发现该通配符匹配的字母不分大小写。
[[:lower:]] 匹配单个小写字母
[[:upper:]] 匹配单个大写字母
[[:punct:]] 匹配单个符号
[[:digit:]] 匹配单个数字
[[:alnum:]] 匹配单个字母或数字
[1-9] 只能个位数字,匹配1-9的任意数字
[!3-5] 等同于 [^3-5] 只能个位数字,匹配不是3-5的数字
【6】自动补齐
Tab键
tab可以实现命令和路径自动补齐。
当一次tab补齐不了时代表以此关键字开头的内容不唯一,可以连按两次tab键来列出所有以此关键字开头的内容。
3. Linux系统目录结构
Linux系统设计中最优秀的特性之一是将所有内容都以文件的形式展现出来,通过一个倒树型结构统一管理和组织这些文件。整个文件系统最大的目录叫/根目录,然后在根目录下分出很多“杈“(也就是可以创建目录),每个“杈”下又分出“杈”,同时“杈”上也可以长出“叶子”(即可以创建和存放文件)。
Linux系统中的二级目录功能介绍
- /bin:二进制可执行文件,系统常规命令
- /sbin:系统管理命令,通常只有root可以执行
- /root:超级用户家目录
- /home:普通用户家目录
- /etc:大多数系统配置文件存放路径
- /boot:启动目录,存放系统自启动文件,内核,初始化程序
- /dev:系统设备管理文件
- /lib:函数库
- /lib64:64位函数库
- /media:临时挂载点
- /mnt:临时挂载点
- /run:自动临时设备挂载点
- /opt:第三方软件安装路径
- /proc:系统硬件信息和系统进程信息
- /usr:用户相关信息信息数据
- /tmp:临时文件产生目录
- /sys:内核相关数据
- /srv:系统数据目录
- /var:系统数据目录