一、Linux 系统介绍与 Windows 系统的区别
1、Linux 介绍
Linux,一般指GNU/Linux(单独的Linux内核并不可直接使用,一般搭配GNU套件,故得此称呼),是一种免费使用和自由传播的类UNIX操作系统,其内核由林纳斯·本纳第克特·托瓦兹(Linus Benedict Torvalds)于1991年10月5日首次发布,它主要受到Minix和Unix思想的启发,是一个基于POSIX的多用户、多任务、支持多线程和多CPU的操作系统。它支持32位和64位硬件,能运行主要的Unix工具软件、应用程序和网络协议。
Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。Linux有上百种不同的发行版,如基于社区开发的Debian、Arch Linux,和基于商业开发的Red Hat Enterprise Linux、SUSE、Oracle Linux等。
现有的Linux操作系统最基本的特征便是这些发行版均使用Linux内核(如Ubuntu、CentOS、红帽等均由Linux内核加对应的工具组成)。
一句话总结什么是Linux,以及Linux的优势:Linux是一款开源、稳定且高效的操作系统,其优势在于自由可定制、安全可靠、性能强劲并适用于多种设备与场景。
2、Linux 与 Windows 的区别
-
视图区别
比较 Windows Linux 界面 界面统一,Windows 程序的菜单几乎一致,快捷键也几乎相同 图形界面风格对应着不同的发行版本,且可能互不兼容 使用 视图界面,操作简单上手容易 图像界面,容易入门 命令行界面,需要了解Linux各个环节的操作命令 -
目录结构区别
-
Linux 的目录结构呈树状,从根目录"/"开始,常见目录及作用如下
-
(/) :根目录,所有文件与目录的起点,相当于 Windows 的C盘根目录
-
/bin:存放基本二进制文件,即系统命令。例如,ls、cp、mv等命令都存放在这个目录下。
-
/boot:存放启动Linux系统时需要的文件,如内核文件和引导装载程序。
-
/dev:设备文件目录,包含了系统上所有设备的信息。例如,硬盘、USB设备、打印机等。
-
/etc:系统的配置文件存放目录,几乎所有的系统配置都在这里。
-
/home:用户的主目录。每个用户都有一个以用户名命名的目录,用于存放个人文件。
-
/lib:存放系统库文件。这些库文件是系统运行程序时需要调用的,类似于Windows中的DLL文件。
-
/media:可移动设备的挂载点,如U盘和光盘。
-
/mnt:临时挂载文件系统的目录。通常用于挂载可移动存储设备。
-
/opt:可选的应用软件包的安装位置,通常用于安装第三方软件。
-
/proc:虚拟文件系统,包含系统运行时的信息。它是一个虚拟的文件系统,存储了系统运行时的信息,如进程、内存使用情况等。
-
/root:系统管理员(root用户)的主目录。
-
/sbin:存放系统管理员使用的系统管理命令(fdisk、ifconfig、reboot等)。
-
/tmp:用于存放临时文件,系统和用户程序运行时产生的临时文件通常存放在这里。系统重启后会被清空。
-
/usr:存放用户的应用程序和文件,它包含了用户使用的应用程序、库文件、头文件等。类似于Windows的Program Files目录。
- /usr/bin:用户级的应用程序。
- /usr/lib:用户级的库文件。
- /usr/local:本地安装的程序和文件。
- /usr/share:共享数据目录,如文档、图标等。
-
/var:变量文件目录。用于存放经常变化的文件,如日志文件、邮件队列等。
-
/srv:服务数据目录。用于存放一些服务的数据文件。
-
/sys:与/proc类似的虚拟文件系统,用于获取和设置内核对象的属性。
-
-
Windows 的目录结构通常为两个及以上盘符,C盘、D盘、、、这些盘符都是根目录
- C盘 :系统资源文件存储盘,即系统资源盘,如果此盘空间满了可能导致系统异常,如非必要,尽可能减少C盘空间占用
- 其他盘符,如D盘,自由分配盘符,可以存储应用,文件,等个人文件
-
-
总结
Linux只有一个根目录,但Windows可以有多个根目录。
Linux 的目录结构设计旨在提供清晰、一致的文件组织方式,使得系统管理和维护变得更加容易。 每个目录都有其特定的用途,这有助于用户和系统管理员快速找到所需的文件和程序。
二、Shell基础
Shell 是与Linux内核沟通的桥梁,可以直接通过Shell命令与Linux内核实现交互


1、Shell 的语法以及运行方式
- 创建一个文件,以.sh为结尾,编写一个简单的shell 脚本
shell
#!/bin/bash
echo "hello!"
# 第一行作用:指定使用那一种shell,这里使用了bash
# 第二行作用:echo作用为输入一个内容,即输入"hello!"
-
shell 脚本的运行方式
- 使用命令给脚本赋予权限,在执行
- chmod +x ./test.sh # 使脚本具有执行权限
- ./test.sh # 运行脚本
- 直接指定 shell 来执行
- /bin/sh test.sh
- 使用命令给脚本赋予权限,在执行
-
两种运行方式的区别
- 用 ./ 运行的脚本回去匹配脚本中所指定的shell
- 直接指定 shell 来执行即忽略脚本中的指定,使用命令指定的shell
-
运行shell
