看完这篇Linux基本的操作就会了(一)

简介: 笔记

前言


这个学期开了Linux的课程了,授课的老师也是比较负责任的一位。总的来说也算是比较系统地学习了一下Linux了~~~

本文章主要是总结Linux的基础操作以及一些简单的概念~如果不熟悉的同学可下个Linux来玩玩(或者去买一个服务器玩玩【学生版的不是很贵】),对于开发者来说,能使用Linux做一些基本的操作是必要的!

那么接下来就开始吧,当然了我的Linux仅仅是入门水平,如果有错的地方还需请大家多多包涵,并不吝在评论区指出错误~


一、为什么我们要学习Linux


相信大部分人的PC端都是用Windows系统的,那我们为什么要学习Linux这个操作系统呢???Windows图形化界面做得这么好,日常基本使用的话,学习成本几乎为零。

而Linux不一样,可能刚接触Linux的人会认为:Linux好麻烦哦,不好玩,都是字符界面。不直观、这个破系统是用来干嘛的~~

日常用的话Windows是比较顺手的,但是我们要知道的是:我们开发出来的程序一般都是放在Linux下运行的。

那可能就会有人提出疑问了:Windows同样是操作系统,为啥要放在Linux下,而不放在Windows下呢??相信Windows也是可以运行我们写出来的程序的。

我总结了Linux的几个优点

  1. 免费
  2. 很多软件原生是在Linux下运行的,庞大的社区支持,生态环境好
  3. 开源,可被定制,开放,多用户的网络操作系统
  4. 相对安全稳定

参考资料:

所以开发者选择了Linux来跑我们自己写出来的程序。


二、Linux的基础知识


Linux系统的组成

  1. linux内核(linus 团队管理)
  2. shell:用户与内核交互的接口
  3. 文件系统:ext3、ext4等。windows 有 fat32  、ntfs
  4. 第三方应用软件


2.1Shell的基本知识


除了Shell、其他的都应该挺好懂的,那么Shell是什么东西呢???

Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口(命令解释器)

Shell可以执行:

  • 内部命令
  • 应用程序
  • shell脚本

1.png

使用type命令可以区分内部命令和外部命令

于是乎,我们利用Shell就可以干下面这些事了:

  • 命令行解释(这是用得最多的!)
  • 命令的多种执行顺序
  • 通配符( wild-card characters )
  • 命令补全、别名机制、命令历史
  • I/O重定向( Input/output redirection )
  • 管道( pipes )
  • 命令替换( 或$( ) )
  • Shell编程语言( Shell Script )

Shell的主要版本有以下这么多:

  • 我们常用(默认)的就是bash(bourne again shell)

2.jpg

使用ps命令观察正在执行的shell

3.png


2.2Linux基本目录结构


在Windows下,会有基本的目录结构的:

4.jpg5.jpg

Linux下也不例外了,也是有基本的目录结构的:

6.png

Linux 文件系统是一个目录树的结构,文件系统结构从一个根目录开始,根目录下可以有任意多个文件和子目录,子目录中又可以有任意多个文件和子目录

  • bin   存放二进制可执行文件(ls,cat,mkdir等)
  • boot  存放用于系统引导时使用的各种文件
  • dev   用于存放设备文件
  • etc    存放系统配置文件
  • home  存放所有用户文件的根目录
  • lib    存放跟文件系统中的程序运行所需要的共享库及内核模块
  • mnt   系统管理员安装临时文件系统的安装点
  • opt    额外安装的可选应用程序包所放置的位置
  • proc   虚拟文件系统,存放当前内存的映射
  • root   超级用户目录
  • sbin   存放二进制可执行文件,只有root才能访问
  • tmp   用于存放各种临时文件
  • usr    用于存放系统应用程序,比较重要的目录/usr/local 本地管理员软件安装目录
  • var    用于存放运行时需要改变数据的文件


2.3命令基本格式


cmd  [options]  [arguments],options称为选项,arguments称为参数

选项和参数都作为Shell命令执行时的输入,它们之间用空格分隔开

  • Linux是区分大小写的

一般来说,后面跟的选项如果单字符选项前使用一个减号-单词选项前使用两个减号--

  • 这是一般的情况,有些命令还是不归属这种规律的(相对较少)~~~
  • 例子:ls -als -alla 单个字符使用一个-,一个单词all 使用两个--

在Linux中,可执行的文件也进行了分类:

  • 内置命令:出于效率的考虑,将一些常用命令的解释程序构造在Shell内部
  • 外置命令:存放在/bin、/sbin目录下的命令
  • 实用程序:存放在/usr/bin、/usr/sbin、/usr/share、/usr/local/bin等目录下的实用程序
  • 用户程序:用户程序经过编译生成可执行文件后,可作为Shell命令运行
  • Shell脚本:由Shell语言编写的批处理文件,可作为Shell命令运行


2.4通配符


学过一些正则表达式的或者有点基础的同学对通配符应该就不陌生的了,在Linux也有通配符(在搜索的时候挺有用的)

  • *:匹配任何字符和任何数目的字符
  • ?:匹配单一数目的任何字符
  • [ ]:匹配[ ]之内的任意一个字符
  • [! ]:匹配除了[! ]之外的任意一个字符,!表示非的意思


2.5文件的类型


在Linux下文件的类型有这么多:

  • 普通文件-
  • 目录d
  • 符号链接l
  • 硬链接: 与普通文件没什么不同,inode 都指向同一个文件在硬盘中的区块
  • 软链接: 保存了其代表的文件的绝对路径,是另外一种文件,在硬盘上有独立的区块,访问时替换自身路径(简单地理解为 Windows 中常见的快捷方式)。
  • 字符设备文件 c
  • 块设备文件b
  • 套接字s
  • 命名管道p

我们常见的就是普通文件,目录和符号链接。其他的了解一下即可~

符号链接参考资料:

目录
相关文章
|
3月前
|
网络协议 Linux 网络安全
入职必会-开发环境搭建39-Linux常用操作-Linux防火墙操作
在CentOS 7中,新引入了firewalld服务(防火墙),取代了CentOS 6之前的iptables服务(防火墙)。
入职必会-开发环境搭建39-Linux常用操作-Linux防火墙操作
|
3月前
|
存储 运维 Linux
Linux磁盘精准缩容:操作详解与技巧
在Linux系统管理中,有效的磁盘空间优化对于维护系统性能至关重要。本文将深入探讨如何在Linux环境下安全地进行磁盘缩容,帮助你合理调整存储资源,确保系统高效运行。跟随本篇的步骤,一起优化你的Linux系统磁盘空间!
Linux磁盘精准缩容:操作详解与技巧
|
4月前
|
Linux 网络安全 开发工具
Linux 管理远程会话 screen:掌握终端的多任务操作
`Linux screen` 命令让多任务管理变得更简单,尤其在SSH连接远程服务器时。创建新会话如`screen -S backup`,查看会话`screen -ls`,退出`exit`。高级功能包括直接在会话中运行命令,如`screen vim memo.txt`,会话共享以协同工作,以及通过`screen -r`或`-D -r`重新连接或强制恢复断开的会话。提高效率,确保任务不间断运行。
73 1
|
3月前
|
安全 固态存储 Linux
服务器linux操作系统重装的完整流程-傻瓜式教学
服务器linux操作系统重装的完整流程-傻瓜式教学
|
4月前
|
Linux 应用服务中间件 网络安全
linux 初始化全部操作
linux 初始化全部操作
36 1
|
4月前
|
Linux C++
Linux C/C++目录和文件的更多操作
Linux C/C++目录和文件的更多操作
|
4月前
|
Ubuntu Linux
服务器硬件 做raid操作 ubuntu linux做raid
服务器硬件 做raid操作 ubuntu linux做raid
75 0
|
4月前
|
SQL 关系型数据库 MySQL
Linux 下mysql操作
Linux 下mysql操作
37 0
|
4月前
|
机器学习/深度学习 Shell Linux
linux shell脚本判断文件或文件夹是否存在循环操作
linux shell脚本判断文件或文件夹是否存在循环操作
164 0
|
4月前
|
Linux Perl
编程入门(七)之【Linux进阶操作AWK】
编程入门(七)之【Linux进阶操作AWK】
61 0