Linux操作系统
Linux不是一个具体的操作系统,而是一类操作系统的总称,具体版本成为发行版。
- Red Hat:目前被IBM收购,收费版,目前最大的Linux供应商
- CentOS: Red Hat退出的免费版
- Ubuntu:界面比较友好
虚拟机
学习Linux系统,就需要有一个可用的Linux系统。我们也不能将自己系统换成Linux系统,因为Linux系统并不适合日常办公使用,所以我们需要借助虚拟机来获得可用的Linux系统环境进行学习。
什么是虚拟机?
借助虚拟化技术,我们可以在系统中,通过软件:模拟计算机硬件,并给虚拟硬件安装真实的操作系统。 这样,就可以在电脑中,虚拟出一个完整的电脑,以供我们学习Linux系统。
VMware WorkStation
我们选用VMware WorkStation软件来提供虚拟机。
下载地址: https://www.vmware.com/cn/products/workstation-pro.html
- 我们只需要点击next就可以安装完成
下载CentOS操作系统
我们需要下载操作系统的安装文件,CentOS7.6版本
Index of /7.6.1810/isos/x86_64
在VMware中安装CentOS操作系统:
先打开VMware软件
按照步骤创建虚拟机:
点击完成后,即开启了CentOS系统的安装,耐心等待安装完成即可,后续都是自动化的。
对于操作系统的使用,有2种使用形式:
- 图形化页面使用操作系统
- 以命令的形式使用操作系统
不论是Windows还是Linux亦或是MacOS系统,都是支持这两种使用形式。
FinalShell
我们使用VMware可以得到Linux虚拟机,但是在VMware中操作Linux的命令行页面不太方便,
我们可以通过第三方软件,FinalShell,远程连接到Linux操作系统之上。
Windows: http://www.hostbuf.com/downloads/finalshell_install.exe
Linux基础命令
Linux的目录结构是一个树型结构 ;Windows 系统可以拥有多个盘符, 如 C盘、D盘、E盘 Linux没有盘符这个概念, 只有一个根目录 /, 所有文件都在它下面。
无论是什么命令,用于什么用途,在Linux中,命令有其通用的格式:
如:ls -l /home/demo
意思是以列表的形式,显示/home/demo目录内的内容
ls命令
当ls不使用参数,表示列出:当前工作目录的内容.
cd 切换工作目录
当Linux终端(命令行)打开的时候,会默认以用户的HOME目录作为当前的工作目录 我们可以通过cd命令,更改当前所在的工作目录。
mkdir命令
mkdir命令可以创建新的目录(文件夹)
mkdir -p 选项
如果想要一次性创建多个层级的目录,可以使用此命令创建多个连续目录
touch 创建文件
可以通过touch命令创建文件
mv移动文件
mv 参数1 参数2
- 如果参数2不存在,则进行改名操作
rm删除文件、文件夹
grep命令
可以通过grep命令,从文件中通过关键字过滤文件行。
ls | grep Desktop # 过滤ls的结果
任何命令都支持:--help 选项, 可以通过这个选项,查看命令的帮助。
ls --help # 会列出ls命令的帮助文档
因为现在不管是云服务器,还是图形化界面,都可以很好的快速上手操作,就不过多赘述命令。
vi\vim编辑器
vi\vim是Linux中最经典的文本编辑器 同图形化界面中的 文本编辑器一样,vi是命令行下对文本文件进行编辑的绝佳选择。
vim 是 vi 的加强版本,兼容 vi 的所有指令,不仅能编辑文本,而且还具有 shell 程序编辑的功能,可以不同颜色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性。
vim编辑器的三种工作模式:
- 如果文件路径表示的文件不存在,那么此命令会用于编辑新文件
- 如果文件路径表示的文件存在,那么此命令用于编辑已有文件
Linux用户和权限
我们如果不修改的话,就是一直在root用户操作;我们可以创建一个普通用户:cat
useradd -m cat
passwd 123 为用户指定密码
root用户拥有最大的系统操作权限,而普通用户在许多地方的权限是受限的。
可以通过su命令切换到root得到最大权限。
我们可以使用sudo命令,为普通的命令授权,临时以root身份执行。
在其它命令之前,带上sudo,即可为这一条命令临时赋予root授权
为普通用户配置sudo认证
切换到root用户,执行visudo命令,会自动通过vi编辑器打开:/etc/sudoers
在文件的最后添加:cat ALL=(ALL) NOPASSWD: ALL
表示使用sudo命令,无需输入密码,最后通过 wq 保存。
Linux经常用到的操作
ctrl + c 强制停止
某些程序的运行,如果想要强制停止它,或者命令输入错误,可以使用快捷键ctrl + c。
ctrl + d 退出或登出
退出账户的登录或者退出某些特定程序的专属页面
光标移动快捷键:
ctrl + a,跳到命令开头 ctrl + e,跳到命令结尾
清屏
ctrl + l,或clear 可以清空终端内容
Linux里的“应用商店”
yum:RPM包软件管理器,用于自动化安装配置Linux软件,并可以自动解决依赖问题。
systemctl命令控制软件的启动和关闭
Linux系统很多软件(内置或第三方)均支持使用systemctl命令控制:启动、停止、开机自启。
能够被systemctl管理的软件,一般也称之为服务~
ln命令创建软连接:
在系统中创建软链接,可以将文件、文件夹链接到其它位置。
ln -s 参数1 参数2
- 参数1:被链接的文件或文件夹
- 参数2:要链接去的目的地
环境变量
环境变量是操作系统(Windows、Linux、Mac)在运行的时候,记录的一些关键性信息,用以辅助系统运行。
无论当前工作目录是什么,都能执行/usr/bin/cd这个程序,这个就是借助环境变量中:PATH这个项目的值来做到的。
在Linux系统中,$符号被用于取”变量”的值。echo $PATH:就可以取得PATH这个环境变量的值,并通过echo语句输出出来。
Linux环境变量可以用户自行设置,其中分为:
- 临时设置,语法:export 变量名=变量值
- 永久生效 针对所有用户生效,配置在系统的:/etc/profile文件中 然后通过语法:source 配置文件 进行立即生效。
自定义环境变量PATH:
在当前HOME目录内创建文件夹,myenv,在文件夹内创建文件hello
通过vim编辑器,在hello文件内填入:echo 哈哈哈哈哈
完成上述操作后,随意切换工作目录,执行hello命令尝试一下,会发现无法执行
临时修改PATH:export PATH=$PATH:/home/hello,再次执行mkhaha,无论在哪里都能执行了