Linux是什么?
Linux是一个操作系统,与Windows,mac,android都是“并列”的关系。
Linux是全世界最主流的一个操作系统(没有之一)
- 世界上安装Linux系统的设备是最多的,远远超过Windows系统

Linux主要的应用领域
- 服务器端:存在很多很多设备,普通用户看不到
- 嵌入式设备:路由器,交换机,空调,冰箱…
- 移动端:手机端
Linux是作为一个程序员必须要知道的内容
严格的说:Linux表示的是一个“操作系统的内核”
一个完整的操作系统:操作系统内核+配套的应用程序
内核里面包含了操作系统的最核心的功能
- 管理各种硬件设备
- 给各种软件程序提供一个稳定的运行环境
Linux发行版
因为Linux是一个完全开源免费的内核,因此有些公司和组织,给Linux内核搭配不同的应用程序,这就构成了不同的发行版。

- 公司中,最主要使用的发行版叫做:Redhat(红帽),红帽是收费的
- 当前学习阶段,使用CentOS这个系统代替Redcat

这里我是通过云服务器安装CentOS
使用终端软件连接到Linux
终端软件是一类工具软件,可以和远程的主机建立网络连接,从而对主机进行一些操作。
推荐使用:XShell

通过XShell启动Linux成功

关于XShell下的复制粘贴
- 复制: ctrl + insert (有些同学的 insert 需要配合 fn 来按)
- 粘贴: shift + insert
ctrl + c / ctrl + v 是不行的.
Linux服务器不太适合图形化界面的原因
- 图形化界面比较消耗资源,要将配置用到刀刃上
- 图形化界面存在一些BUG,不稳定,容易崩溃
- 服务器是通过网络远程操控的,图形化界面非常占用宽带
- 命令行熟练掌握的话,效率远高于图形化界面。更不要说,命令行方便通过脚本来批量执行重复的任务
Linux常用命令
Linux目录命令
ls
ls
- ls就是罗列出当前的目录小都有哪些文件和目录
- ls的功能相当于Windows上的”文件资源管理器“

这里包含3个目录:2,3,4
注:当使用的机器是新机器的时候,可能啥都没有
ls -l
列出文件的详细信息,每个结果都占一行,使信息更加详细
ls -l 可以简写成ll

pwd
pwd
pwd:显示用户当前所在的目录

cd
cd
cd后面跟上一个具体的目录,这个目录就表示要切换到位置

注:cd后面填写的目录可以是绝对目录也可以是相对目录
认识 Linux 目录结构
Linux 是一个树形目录结构.

几个特殊的目录:
- / 称为根目录
- . 称为当前目录
- … 称为当前目录的上级目录
绝对路径 vs 相对路径
- 形如: /usr/share/tomcat/logs/ 以根目录开头的, 称为绝对路径.
- 形如: ./logs 以 . 或者 … 开头的, 称为相对路径.
Linux文件命令
touch
touch
touch:创建文件

cat
cat
cat:查看文件的内容

因为之前创建test.txt但是文件里面没有任何东西,所以这里使用cat查看不到任何内容
echo
通过echo操作能够给文件写入一些简单的内容
值得注意的是echo只能写入一些简单的数据

mkdir
mkdir
mkdir:创建出一个目录
- 我们已经知道之前之前的文件包含了3个目录2,3,4
- 这里在创建一个目录5

tree
在linux上有一个专门的tree命令,可以直观的查看文件的结构
tree不是linux自带的,需要借助第三方工具进行下载
对于新买的服务器大概率是没有tree命令
借助这个命令就可以安装tree命令

rm
rm
删除文件或目录
例如我们删除文件test.txt

注:删除的时候可以有提示也有可能没有提示,这个需要根据系统来分出差别,因此我们不要随便尝试删除一些比较重要的文件。
- rm删除目录不能直接删除,需要加入-r才可以删除目录
-r表示递归
要删除的目录下,可能还有文件,或者其它的目录
要删除这个目录,就得先删掉这个目录中的子目录

重要注意事项:
千万不要运行 rm -rf / , 尤其是在公司的生产服务器上.
|