Linux基础(一)

一:Linux概述

1. Linux的概述

Unix

Unix是一个强大的多用户、多任务操作系统。 于1969年在AT&T的贝尔实验室开发。 UNIX的商标权由国际开放标准组织(The Open Group)所拥有。 UNIX操作系统是商业版,需要收费,价格比Microsoft Windows正版要贵一些。

简介

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统。

历史

Linux最初是由芬兰赫尔辛基大学学生Linus Torvalds由于自己不满意教学中使用的MINIX操作系统, 所以在1990年底由于个人爱好设计出了LINUX系统核心。后来发布于芬兰最大的ftp服务器上,用户可以免费下载,所以它的周边的程序越来越多,Linux本身也逐渐发展壮大起来,之后Linux在不到三年的时间里成为了一个功能完善,稳定可靠的操作系统.

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QWRLhiC2-1578389522359)(assets/96dda144ad345982b3b0bcdb0df431adcbef8444.jpg)]

版本

Linux的版本分为两种:内核版本和发行版本
内核版本是指在Linus领导下的内核小组开发维护的系统内核的版本号
发行版本是指一些组织和公司根据自己发行版的不同而自定的

主流版本

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mDix5cpk-1578389522361)(assets/1548055765804.png)]

应用

Linux的运用非常广泛
服务器系统:Web应用服务器、数据库服务器、DNS、FTP等等;
嵌入式系统:路由器、分享器、交换器、家电用品的微电脑控制器等等,
运算服务器:高性能运算、计算密集型应用
桌面应用系统
移动手持系统

2. Linux和windows差异

系统核心

windows和linux的本质区别是核心的不同,windows是从早期的dos经过比尔盖茨开发来的,linux是由李纳斯最早从unix上开发出来的

授权方式

windows是微软公司的产品,版权在微软公司
linux遵循GNU,是开放免费的软件.

交互方式

windows主要是通过图形界面的方式和用户交互的,图形界面会占用比较多的资源
linux的用户企业用户大部分时候是远程操作,用命令行的时候比较多,对资源的消耗比较少

应用领域

windows目前主要的应用应该是PC机,或者说是家用的普通办公电脑。
linux更多的用于企业的服务器或者网络设备等。

二:软件安装

VM,Linux CentOS, putty 等三份软件的安装

三:Linux常用命令(重点)

1. 目录操作

Linux目录结构

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2uqHt9Kz-1578389522363)(assets/1548298026886.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iqisENyc-1578389522364)(assets/003vPl7Rty6E8kZRlAEdc690.jpg)]

常用目录

/root: 该目录为系统管理员,也称作超级权限者的用户主目录。
/home: 用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
/etc:  这个目录用来存放所有的系统管理所需要的配置文件和子目录。
/usr:  这是一个非常重要的目录,存放系统用户共享资源

列出文件及目录

ls(list)是一个非常有用的命令,用来显示当前目录下的内容。配合参数的使用,能以不同的方式显示目录内容。
格式:ls [参数] [路径或文件名]
参数:-a   显示所有文件或目录(包含隐藏的文件)-l  显示文件详细信息
常用:在linux中以 . 开头的文件都是隐藏的文件lsls -a        显示所有文件或目录(包含隐藏的文件)ls -l       列出当前目录下的文件列表,以详细信息展示,可以缩写为llls -l /     列出根目录下的文件列表,以详细信息展示

切换目录

cd(change directory)命令可以用来切换目录格式: cd <路径或目录名>
常用:cd app       切换到app目录cd ..       切换到上一层目录cd /        切换到系统根目录cd ~        切换到用户主目录cd -        切换到上一个所在目录

创建目录

mkdir(make directory)命令可用来创建子目录。格式: mkdir [参数] <目录路径或目录名>
参数: -p  级联创建目录结构
常用:mkdir app   在当前目录下创建app目录mkdir –p app2/test  级联创建aap2以及test目

删除目录

rmdir(remove directory)命令可用来删除“空”的子目录格式: rmdir <目录路径或目录名>
常用:rmdir app    删除app目录

2. 文件操作

查看文件内容

cat 用于显示文件的内容。格式: cat [参数] <文件名>
参数:-n   对输出的所有行编号
常用cat yum.confcat -n yum.conf
more 一般用于要显示的内容会超过一个画面长度的情况。按空格键显示下一个画面。回车显示下一行内容。格式: more [参数] <文件名>
常用:more yum.conf
快捷键:   空格       翻页确定        下一行q         退出查看
less 用法和more类似,不同的是less可以通过PgUp、PgDn键来控制上下翻页。格式: more [参数] <文件名>
常用:less yum.conf
快捷键:   PgUp     上一页PgDn     下一页q            退出查看
head 查看文件的前面部分,默认显示前10行格式: more [参数] <文件名>
参数:-n       显示每个文件的前n行内容
常用: head yum.conf  显示文件的前10行head -100 yum.conf  显示文件的前100行
tail 查看文件的后面部分,默认显示最后10行格式: tail [参数] <文件名>
参数:-n       显示每个文件的后n行内容-f      即时输出文件变化后追加的数据。
常用: tail yum.conf       显示文件的最后10行tail -100 yum.conf  显示文件的最后100行tail -f yum.conf   显示文件的最后10行,并且监控文件的变化,输出文件变化后追加的数据。

过滤文件内容

grep 查找符合条件的字符串。
格式: grep <text> [参数] <文件名>
参数:-i   忽略大小写-n  输出的同时打印行号-B  显示前N行的内容-A    显示后N行的内容--color 高亮展示查询关键字
常用: grep headers install.log  在文件中查找headersgrep  -B 10 headers  install.log   在文件中查找headers,显示前10行的内容grep  -A 10 headers  install.log   在文件中查找headers,显示后10行的内容grep  -A 10 --color headers  install.log  在文件中查找headers,高亮展示关键字

创建空文件

touch 用于创建一个空文件格式: touch <文件名>
常用:touch aa.txt

删除文件

rm 用于删除文件或者目录格式: rm [参数] <文件名>
参数:-f   强制删除。忽略不存在的文件,不提示确认-r        递归删除目录及其内容
常用:rm   a.txt       删除a.txt文件,输入y/n,y确认删除,n不删除rm -f   a.txt   不询问,直接删除rm -r   aa     删除aa目录,每个目录及文件都提示rm -rf  aa     不询问递归删除aa目录rm -rf  *        删除当前目录下所有文件rm -rf  /*      删除根目录下所有文件(自杀)

文件编辑

vi/vim 用于编辑文件, 一共有三种模式:命令行模式、插入模式、底行模式。格式: vi/vim [参数] <文件名>命令行模式: 用户在命令行模式可以按一些快捷键达到快速输入的目的,例如复制,粘贴,删除,插入等
插入模式: 用户可以在插入模式对文件内容进行编辑
底行模式: 用户可以底行模式输入一些命令,对文件进行操作,例如:保存退出,不保存退出,查找等用户使用vi/vim命令编辑文件,刚开始进入到命令行模式,之后可以使用命令来切换模式命令行模式-->插入模式: i 在当前位置插入I 在当前行首插入a 在当前位置后插入A 在当前行尾插入o 在当前行之后插入一行O 在当前行之前插入一行插入模式-->命令行模式:Esc 从插入模式切换到命令行模式命令行模式-->底行模式::(冒号) 从命令行模式切换到底行模式命令行模式快捷键:dd     快速删除一行yy    拷贝当前行nyy 拷贝当前后开始的n行,比如2yy拷贝当前行及其下一行。p    在当前光标后粘贴,如果之前使用了yy命令来复制一行,那么就在当前行的下一行粘贴。P    在当前行前粘贴底行模式命令:wq    保存退出q!  强制退出并忽略所有更改e!   放弃所有修改,并打开原来文件。/text     查找text,按n健查找下一个,按N健查找前一个。

3. 通用文件或目录操作

复制文件或目录

cp(copy) 将源文件复制至目标文件,或将多个源文件复制至目标目录。格式: cp [参数] 源目录或文件 目标目录或文件
参数:-r       递归复制目录及其子目录内的所有内容
常用:cp install.log install.log.bak       将install.log复制为install.log.bak文件cp install.log aaa/                 将install.log文件复制到当前目录下的aaa目录下cp install.log bbb/install.log.bak  将install.log文件复制到当前目录下的bbb目录下,改名为install.log.bakcp aaa -r  bbb/                    递归复制aaa目录及子目录的所有内容到bbb目录下cp aaa -r  bbb/ccc                  递归复制aaa目录及子目录的所有内容到bbb目录下,改名为ccc复制文件,如果后一个参数是目录,则复制文件到指定目录
复制文件,如果后一个参数是文件,则复制文件到指定路径,并改名
复制目录,如果后一个参数是已经存在的目录,则复制目录到指定目录下
复制目录,如果后一个参数是不存在的目录,则复制目录到指定路径下,并改名

移动文件或目录

mv(move) 将源文件重命名为目标文件,或将源文件移动至指定目录。格式: mv 源目录或文件 目标目录或文件
常用: mv install.log install.log.bak      将install.log重命名为install.log.bakmv install.log aaa/                  将install.log文件移动到当前目录下的aaa目录下mv install.log bbb/install.log.bak  将install.log文件移动到当前目录下的bbb目录下,改名为install.log.bakmv aaa  bbb/                       将aaa目录移动到bbb目录下mv aaa  bbb/ccc                     将aaa目录移动到bbb目录下,重命名为ccc移动文件,如果后一个参数是目录,则移动文件到指定目录
移动文件,如果后一个参数是文件,则移动文件到指定路径,并重命名
移动目录,如果后一个参数是已经存在的目录,则移动目录到指定目录下
移动目录,如果后一个参数是不存在的目录,则移动目录到指定路径下,并重命名

打包压缩和解压缩

tar 命令能够将用户所指定的文件或目录打包成一个文件,但不做压缩。一般Linux上常用的压缩方式是选用tar将许多文件打包成一个文件,再以gzip压缩命令压缩成xxx.tar.gz(或称为xxx.tgz)的文件。  格式: tar [参数] <文件或目录列表>
参数:-c:   创建一个新tar文件-v:   显示运行过程的信息-f:    指定文件名-z:    调用gzip压缩命令进行压缩-x:   解开tar文件-C:  指定解压路径
常用:tar –cvf aaa.tar ./*     将当前目录下的所有文件打包为aaa.tartar –zcvf aaa.tar.gz ./*   将当前目录下的所有文件打包压缩为aaa.tar.gztar –xvf aaa.tar          将aaa.tar提取到当前目录tar -xvf aaa.tar.gz -C /usr/aaa      将aaa.tar.gz解压到/usr/aaa目录

4. 其他常用命令

重定向输出

>     重定向输出,覆盖原有内容
>>    重定向输出,又追加功能常用:ifconfig > ifconfig.txt   将ifconfig命令的结果输出到 ifconfig.txt文件中ifconfig >> ifconfig.txt   将ifconfig命令的结果追加到 ifconfig.txt文件中

管道

管道是Linux命令中重要的一个概念,其作用是将一个命令的输出用作另一个命令的输入。
示例:ls --help | more    分页查询帮助信息ps –ef | grep java  查询名称中包含java的进程

其他

1. pwd       查看当前工作目录
2. ll -h    友好显示文件大小
3. wget     下载资料

重定向输出,覆盖原有内容

重定向输出,又追加功能

常用:
ifconfig > ifconfig.txt 将ifconfig命令的结果输出到 ifconfig.txt文件中
ifconfig >> ifconfig.txt 将ifconfig命令的结果追加到 ifconfig.txt文件中


#### 管道

管道是Linux命令中重要的一个概念,其作用是将一个命令的输出用作另一个命令的输入。
示例:
ls --help | more 分页查询帮助信息
ps –ef | grep java 查询名称中包含java的进程


#### 其他
  1. pwd 查看当前工作目录
  2. ll -h 友好显示文件大小
  3. wget 下载资料

Linu系统——基础知识1相关推荐

  1. Linux系统基础知识

    Linux系统基础知识 1.在Linux系统中,以文件方式访问设备.   2. Linux内核引导时,从文件 /etc/fstab中读取要加载的文件系统. 3. Linux文件系统中每个文件用 ino ...

  2. 计算机软件与硬件系统基础知识,计算机软硬件系统基础知识.pdf

    计算机软硬件系统基础知识 技术创新,变革未来 计算机系统基本组成 • 一.硬件系统 • 二.软件系统 硬件系统 硬件系统包括哪些组成部分?硬件系统的作用是什么? 计算机硬件系统组成分类 • 一.输入单 ...

  3. 关于机房环境监控系统基础知识

    关于机房环境监控系统基础知识 对于计算机房,考虑机房设备运行的安全性以及管理的科学性,需要通过现代IT技术将机房分散的设备运行情况实现集中化的管理,对机房内的UPS.精密空调.配电柜.温湿度点.漏水侦 ...

  4. window计算机日志分析详解,系统基础知识:筛选Windows日志与借助Windows日志分析故障...

    系统基础知识:筛选Windows日志与借助Windows日志分析故障 我们最关心的事情,一定是我们Windows 7系统的安全,我们学习Windows事件查看器的最终目的,也是希望通过WIndows事 ...

  5. linux系统下io的过程,Linux系统基础知识:IO调度

    Linux系统基础知识:IO调度 IO调度发生在Linux内核的IO调度层.这个层次是针对Linux的整体IO层次体系来说的.从read()或者write()系统调用的角度来说,Linux整体IO体系 ...

  6. PC系统基础知识及软硬简单故障排解大全

    PC系统基础知识及软硬简单故障排解大全 1#[Windows]攻略大全转自:斑马网 www.banma.com 转自:斑马网 www.banma.com Alt键使用十二招 转自:斑马网 www.ba ...

  7. javaI/O系统基础知识

    javaI/O系统基础知识 javaI/O系统基础知识 Posted on 2011-10-14 18:20  亚卓 阅读(464)  评论(2)  编辑  收藏  编程语言的I/O类库中常常使用流这 ...

  8. android系统知识,Android系统基础知识百科

    Android系统基础知识百科 2015-12-16 17:58:31 954浏览 Android系统作为一款功能强大的移动计算平台,在保持开放性的同时,必须提供强健的安全保障.Android的系统安 ...

  9. 嵌入式系统设计师考试笔记之嵌入式系统基础知识

    以下是转帖一位网友的嵌考笔记 嵌入式系统设计师考试笔记之嵌入式系统基础知识 欧浩源(ohy3686@qq.com) 20080818 一.引言 自<嵌入式系统设计师考试复习笔记之存储管理篇> ...

  10. 操作系统——Liunx系统基础知识

    摘要 本博文主要是介绍操作系统基础的相关知识和原理. 一.基本的计算机硬件知识 在1945年冯诺依曼和其他计算机科学家们提出了计算机具体实现的报告,其遵循了图灵机的设计,⽽且 还提出⽤电⼦元件构造计算 ...

最新文章

  1. PHP Mysql 网站迁移,Linux+PHP+MySql网站迁移配置
  2. hdu - 4027 Can you answer these queries?
  3. docker容器内无法下载到alpine的资源,报错network error (check Internet connection and firewall)
  4. java代码大全_各种java技术文章汇总整理
  5. 【Java】I/O阻塞下的守护线程与程序计数
  6. php mysql cpu100_解决mysql占用cpu资源100%的问题_MySQL
  7. Super Saiyan 寻找创业合伙人
  8. JQueryDOM之样式操作
  9. java算法,发扑克牌
  10. 转行3D建模,C4D与3ds Max哪个更好入门就业
  11. C++编码实现定时任务执行功能
  12. 国际市场营销知识框架图_留学热门 | 伦敦里士满大学市场营销本科专业
  13. dubbo-admin的下载与安装
  14. 腾讯、美团通报反腐情况;马斯克回应:涨价也没人补差价;滴滴出行恢复新用户注册 | EA周报...
  15. 阿里云Linux服务器搭建WordPress教程
  16. ONVIFclient搜索设备获取rtsp解决开发笔记(精华文章)
  17. MFC之学习绘制椭圆、库画刷使用
  18. mysql timestamp 默认_MySQL数据库TIMESTAMP怎么设置默认值 | 学步园
  19. 我的世界java启动程下载_我的世界java启动器下载
  20. 基于GPT-4的神仙插件Bito,亲测好用

热门文章

  1. windows10自带屏保设置
  2. 【Practical】线性空间
  3. 几个网络捕获工具的评价
  4. python123凯撒密码_凯撒密码和反密码
  5. 三位数除以两位数竖式计算没有余数_三位数除两位数计算题-云簿杜同学
  6. 还在烦恼ToF的误差问题?有人帮你找到解决方法了!
  7. 小时候的蓝精灵,大家还记得木有哇?
  8. 启动界面、封面图片、Splash关不掉,一直转圈,无法进入
  9. Spring第一讲:谈谈你对Spring的理解?从该问题着手深入解析Spring/Spring5新特性
  10. M-Arch(12)第十一个示例:如何用无源蜂鸣器播放音乐