linux把下面这个教程和后面的参考课程里面的视频看了就行了,linux比较简单,主要就是一些命令

Linux

  • 1 简介
    • 1.1 什么是Linux,为什么要学Linux
    • 1.2 Linux系统安装
    • 1.3 操作系统
    • 1.4 服务器
  • 2 Linux辅助软件3个足够
    • 2.1 Xshell
    • 2.2 Xftp
    • 2.3 FileZilla Client
  • 3 Linux操作(命令)
    • 3.1 基本规则
    • 3.2 掌握常见的增删改查命令就可以了
  • 4 一切都是文件
    • 4.1 文件操作(增删改查文件)
      • 4.1.1 移除文件大全
    • 4.2 vi编辑器(编辑文件)
      • 4.2.1 3种模式(编辑,输入,命令行)
      • 4.2.2 VIM
      • 4.2.3 文件传输
    • 4.3 文本文件、链接、文件夹
  • 5 网络命令
  • 6 用户和组权限
    • 6.1 root
    • 6.2 组
  • 7 三种安装软件方式
    • 7.1 yum管理软件
  • 8 Linux三剑客(对文本操作的6个命令)
  • 9 后台运行程序(前台运行你不能执行其它命令,后台隐藏在后台)
  • 9 shell编程(shell就是一门编程语言)
    • 9.1 shell就是做命令集合的程序文件
    • 9.2 linux开机启动特定服务
  • 10 shell概述
    • 10.1 shell理解
    • 10.2 创建shell脚本
    • 10.3 执行shell脚本
    • 10.4 深入理解绝对路径和相对路径
    • 11 shell的局部变量和全局变量
    • 11.1 自定义变量
    • 11.2 变量之间的运算
  • 12 流程语句
    • 12.1 判断
    • 12.2 if then
    • 12.3 case
    • 12.4 for
    • 12.5 while
    • 13 函数
    • 13.1 系统函数(系统内置的一些函数)
    • 13.2 自定义函数
  • 参考课程
    • linux命令大全
    • linux常用文件(面试知道下面的就足够了)

1 简介

1.1 什么是Linux,为什么要学Linux

答:(1)Linux作为3大操作系统之一,在服务器市场占据重要地位,我们要进行服务器端开发,必须要学会Linux,它的重要特点就是快,几乎没有图形界面,因为用不到,让服务器能跑就行。
(2)Linux的操作就好像我们windows打开cmd命令一样,只需要用命令就可以实现电脑的各种操作,文件的保存删除修改等,不需要界面。所以学Linux主要就是学命令。
Linux基本特点
1、没有文件扩展名,windows中利用后缀名找到相应的打开软件
2、所有东西都是文件,包括硬件在Linux中也是文件。Linux没有盘符,硬盘对应一个文件夹。
3、多用户使用

1.2 Linux系统安装

我们一般一个电脑安装一个系统,我们电脑安了windows操作系统了,如果要安Linux需要再用一台电脑,为了方便,我们就直接在本机的电脑上创建一个虚拟机。以下两步:
(1)虚拟机就是一台独立的电脑,我们先按虚拟机VMware;
(2)有了电脑以后,就需要安操作系统了,我们再安装CentOS操作系统,这样就可以学习Linux。就相当于有了一台服务器了,自己的电脑把屏幕撤了就是服务器,撤了屏幕鼠标啥的主机里的程序照样可以继续跑。

1.3 操作系统


咱们自己的电脑去掉鼠标、键盘、显示器它也是运行的了,比如放个电影,你插显示器它也在播放,不插显示器它也在播放。

1.4 服务器

我们说的云服务器就是购买阿里腾讯的服务器,然后使用,它们有很多服务器,专门来出租,比如张北县的大数据中心就放了很多服务器。

服务器:
(1)稳定
(2)安全
(3)快速
(4)不能关机

敲黑板!
敲黑板!
敲黑板!

服务器(电脑)用Linux操作系统不用windows的,最重要的一点就是因为免费,服务器要求稳定安全,你搞个烂界面占了一堆内存。所以就不要界面了,通过命令进行交互就行了。
和python编程一个道理,可以让程序有界面,界面下操作,也可以直接在命令窗口用命令行进行操作。

定位不同,Linux本来就是用来给服务器的,而不是给客户端用,所以基本不需要图形界面。

运维就是维护服务器,我们平时整理自己的电脑就是运维。只不过是运维自己的。

嵌入式和普通电脑的区别:
https://jingyan.baidu.com/article/9faa7231f9d671473d28cb57.html

2 Linux辅助软件3个足够

我们如果要使用Linux,第一步的就是开机了。开机以后我们要用的话,就直接在上面敲命令,让它执行就可以了。但是我们打开虚拟机在里面操作比较麻烦。能不能用外面的电脑控制了,当然可以了。
比如我们在张北阿里巴巴大数据中心安了100万台服务器,就是100万台电脑。我们控制的时候不可能到了大数据中心去控制它们。我们在北京的个人电脑上敲命令让它传到服务器执行就行了。
这里就用到了远程控制软件,主要是下面两个:

2.1 Xshell

这个软件安到我们普通的电脑上,我们做运维做部署直接操作用它操作远程服务器就行了。
(1)首先需要输入我们要控制的服务器的ip,登上账号和密码,我们就连接到远程服务器了,就可以发送命令了。
(2)操作起来和直接在Linux上操作是一样的,都是输入命令,这样通过这个软件就起到了远程操作的作用了。

2.2 Xftp

这个软件主要用来进行文件的操作,直接用手拖放文件就行了,省的我们敲命令了。

2.3 FileZilla Client

这个软件和上面的Xftp一样,用这个就行了,这个更好用一些

3 Linux操作(命令)

主要就是文件的增删改查,另外可能涉及一些管理的命令,命令和编程是一个道理。


出来黑乎乎的界面就已经进去了
不要界面,界面占内存,服务器不需要这些东西

3.1 基本规则

(1)命令和参数一定要用空格隔开,多个空格等于一个空格;
(2)区分大小写;
(3)有些命令是自带的(内置命令),有些命令是我们安装的,有些命令是关键字,有些是脚本,有些是文件;
(4)help查看内部命令, man

3.2 掌握常见的增删改查命令就可以了



4 一切都是文件

万事万物皆文件
wiindows分盘,mac和linux不分盘,不要更改二级目录,从3级目录开始更改,因为2级目录都有自己的默认含义。

4.1 文件操作(增删改查文件)

一切皆文件

(1)cd … 就是到当前目录的上一文件夹
(2)cd / 就是到根目录
(3)ll /etc 就是展开etc文件夹下的文件
(4)./是当前文件夹下
(5)cd 就是返回到用户的目录
(6)rm -f install.log 强制删除,不出现提示信息, 其中-f ,另外还有-a,-p等都是参数,有特定意义,比如删除文件夹,删除文件等



ls或者ll后出现的total代表文件占用资源总量

4.1.1 移除文件大全

Linux中删除文件的命令叫移除。bash shell中删除文件的命令是rm
(1)删除空目录 rmdir deleteEmptyFolder
(2)rm -i filename删除文件,使用-i命令参数会在删除前提示你是不是要真的删除该文件,因为文件一旦删除就无法找回
(3)rm filename或rm -f filename直接删除文件,该命令会直接删除文件,不会给出提示
(4)删除文件夹 rm -ir filedir命令,该命令需要缺每个文件是否要被删除,如果文件过多会非常繁琐
(5)rm -rf filedir 该命令会直接删除文件夹,不会给出警告信息和提示,之间把文件夹以及里面的附属文件和文件夹都删除了
(6)只删除文件或文件夹

(7)批量删除文件

4.2 vi编辑器(编辑文件)

vi 就类似于记事本,但是功能比记事本强,VIM
用于在工程中编辑配置文件啥的

4.2.1 3种模式(编辑,输入,命令行)

编辑模式全是快捷键
输入直接输入就行

4.2.2 VIM

(4条消息) vim编辑器里面一些不为人知的操作_乐猿-CSDN博客
https://blog.csdn.net/MrDing991124/article/details/78483731

4.2.3 文件传输

(1)电脑和虚拟机
直接用xfps
用rz.sz命令

(2)虚拟机和虚拟机

4.3 文本文件、链接、文件夹

它们的标记不一样,

5 网络命令

6 用户和组权限

linux文件权限常用操作

文件分为组权限,用户权限和其它用户权限3种

6.1 root

root用户是最牛逼的一个用户,拥有所有权限,是个超级管理员。

6.2 组

把用户分成几个组,方便管理,比如1组的学生去打篮球,2组的学生去跑步,就不用一个一个点名字,张三李四王五去看球了

用户和组是多对多的关系

7 三种安装软件方式

安装包安装,解压安装(直接解压就行),源码安装

7.1 yum管理软件

yum和anaconda里的conda是一个道理

8 Linux三剑客(对文本操作的6个命令)

awk一般不用

sed语法格式

9 后台运行程序(前台运行你不能执行其它命令,后台隐藏在后台)

9 shell编程(shell就是一门编程语言)

shell命令和linux命令有什么区别

我们输入电脑的abcd等ascii码通过shell翻译成机器代码,供内核使用,调用硬件执行。

我们在linux中输入命令的时候,计算机怎么理解,那就需要shell解释器,把我们的命令翻译成机器能识别的二进制代码,然后得到输出再翻译成我们能理解的字符。


操作系统有一些服务程序,一般都是没有界面的,维护电脑运行,比如网络连接,接口监视等。

为什么用shell,他就是为了操作linux操作系统,进行增删改查等,就这么简单,而不是为了识别图像,不是为了做网站,就是为了执行一些命令操作linux系统。

shell就是一个程序文件,或者叫脚本,和python一样,不过linux内核可以运行它

Linux内核主要来操作硬件,如果我们要操作硬件就去操作Linux内核

9.1 shell就是做命令集合的程序文件

(和python一样,只不过shell程序可以直接用linux安的环境来执行)
(1) shell和python一样,不过shell的作用是为了操作linux内核,就是操作操作系统,来执行不同的事情。python一般文件结尾是.py,shell结尾一般是.sh,但是在linux中一切都是文件,加不加.sh都一样,只不过加了以后让我们好理解这是一个shell文件,对于程序执行没有任何影响。

(2) 在一个文件里写好多个命令,然后统一去执行,就这么简单,只不过把多个命令放到了一起。写好shell文件,linux内核可以直接用

(3)在一个shell里执行的文件,你拿出来直接用都能用,shell文件就是把他们放到了一起,就这么简单。

学程序无非4个步骤
(1)变量(数组,字符串,日期时间)
(2)逻辑处理结构运算符
(3)函数
(4)代码间的调用执行

9.2 linux开机启动特定服务

linux开机启动流程图

我们要做的就是把shell脚本文件放到开机启动的服务里面,让它也运行我们的脚本文件。

10 shell概述

10.1 shell理解

  • 1 命令行就是shell语言,但是有时候需要做一些定制化的操作,我们就把每一个命令行放到1个文件中,这样多个命令统一执行,这个文件就叫做脚本。
  • 2 脚本文件就是可以直接翻译执行的文件,能写脚本文件的语言叫脚本语言,比如python和shell,java不行,因为java文件需要先编程,用javac编译成.class文件,而python不用。
  • 3 linux系统分为两大派别,红帽和乌班图,它们使用的linux内核一样,shell不一样,但是shell不一样的地方很少,红帽系统和乌班图系统的区别就类似于win8和win10,红帽执行的时候是用bash软件,乌班图是dash软件。
  • 4 不同linux系统用的软件也有所区别,centos属于红帽分支,按装基于乌班图的软件可能会无法正常运行。
  • 5 启动linux时候,会自动执行bash软件,出来那个命令行界面,我们在里面写命令;
  • 6 sh的命令是一个软连接,它指向了bash

10.2 创建shell脚本

后缀.sh可以加也可以不加

10.3 执行shell脚本


  1. 相对路径直接就是文件必须加./
  2. sh 可以执行shell脚本,因为它是软连接,直接指向了bash,实际上调用的还是bash。
  3. 可以不加bash或者sh,直接指向.sh文件,原因是我们打开的这个命令行界面,本身就是bash软件,可以在里面直接执行。
  4. 当用bash执行的时候不用考虑权限,是因为它后面的文件只是bash命令的一个参数。

10.4 深入理解绝对路径和相对路径

(1)绝对路径加/
(2)相对路径1,相对路径下右文件夹目录可以直接用,./可加可不加。
(3)相对路径2,如果相对路径下直接就是文件,必须要./ 。

11 shell的局部变量和全局变量

11.1 自定义变量

赋值的时候不加$,使用的时候要加,这是一个很重要的问题,很多时候都是因为它出一些问题

export将局部变量转为全局变量;

11.2 变量之间的运算

12 流程语句

12.1 判断

12.2 if then


12.3 case

12.4 for

12.5 while

13 函数

13.1 系统函数(系统内置的一些函数)

实际上linux中的一些命令就是函数,命令都放在系统环境变量中,我们每执行一个命令,相当于就调用这个工具或者叫函数。

13.2 自定义函数

自定义函数可以用return,,但是return只能返回0-255的数,我们基本上不用。

参考课程

下面两个足够了
[1] 太厉害了 已跪!终于有人能把Linux讲的这么通俗易懂了,现在分享给大家(操作系统、Linux运维、全套教程,从入门到精通)linux看这个,shell看下面的

对应的pdf文件:linux介绍https://download.csdn.net/download/xiaotiig/63805105
对应的课程资料:https://pan.baidu.com/s/1suRiI7ikcW3gLjJNXpU3Ug 提取码:lzj8
就是下面这门课

[2]3天搞定Linux,1天搞定Shell,这个shell讲的不错()

这个视频带的shell的pdf文件,把这个看了shell就懂了,自己电脑也有

[3] 这个感觉太深入了,最好的课程【小白入门 通俗易懂】2021韩顺平 一周学会Linux_哔哩哔哩_bilibili

linux命令大全

[1] Linux 命令大全 | 菜鸟教程
https://www.runoob.com/linux/linux-command-manual.html

[2] Linux命令大全(手册) – 真正好用的Linux命令在线查询网站
https://www.linuxcool.com/

[3] shell在线编程

linux常用文件(面试知道下面的就足够了)

  1. 文件增删改查;
  2. 用户组操作;
  3. 文件权限操作;chmod
  4. 后台程序控制
  5. 软件安装yum;
  6. 文件编辑vim

(1)linux面试常问命令 - USTC丶ZCC - 博客园
https://www.cnblogs.com/USTC-ZCC/p/13686351.html
(2)程序员必备:46个Linux面试常见问题!收藏! - 知乎
https://zhuanlan.zhihu.com/p/86075753

(3)Linux常用操作指令(面试专用) - ccy1106 - 博客园
https://www.cnblogs.com/ccy1106/p/6637661.html

(4)(22条消息) Linux命令面试常考的简单汇总_别说话写代码的博客-CSDN博客
https://blog.csdn.net/qq_21997625/article/details/84071344?utm_medium=distribute.pc_relevant.none-task-blog-2defaultbaidujs_baidulandingword~default-0.pc_relevant_paycolumn_v3&spm=1001.2101.3001.4242.1&utm_relevant_index=3

(5)shell常见命令

算法工程师18——Linux从入门到熟练相关推荐

  1. SRE运维工程师笔记-Linux基础入门

    SRE运维工程师笔记-Linux基础入门 1. Linux基础 1.1 用户类型 1.2 终端terminal 1.2.1 终端类型 1.2.2 查看当前的终端设备 1.3 交互式接口 1.3.1 交 ...

  2. 算法工程师常用Linux命令总结

    <算法工程师常用Linux命令总结>   做 CV 两年了,整理一些在做训练或其他任务的时候常用的 shell 操作,什么事都用 python 来做有时候还是挺麻烦的,比如有一次在做一个目 ...

  3. 【广告算法工程师入门 6】【转】20万、50万、100万的算法工程师,到底有什么区别?

    需要了解一下广告算法工程师之间的区别,推荐这篇文章. [转]@北冥乘海生 ,想吸收更多负能量,请大家关注公众号"计算广告"(Comp_Ad)和知乎专栏"计算广告" ...

  4. 20万、50万、100万的算法工程师,有什么区别?

    本文作者:北冥乘海生 近几年,算法工程师们的境遇有了很大改观:早些年,信奉糙快猛主义的大佬们觉得他们饱食终日.无所用心,没工作只好在学校混博士,靠数据上的障眼法装神弄鬼.可是,随着去年AlphaGo大 ...

  5. 年薪20万、50万、100万的算法工程师,到底有什么区别?

    公元七世纪,在车迟国国家气象局组织的一次求雨活动中,虎力.鹿力.羊力三位大仙成功地祈下甘霖,于水火中救了黎民.老国王虽然不明就里,却从此尊他们为国师,奉道教为圭臬. 本世纪,算法工程师们的境遇也差不多 ...

  6. 算法工程师的三个境界

    [与数据同行]已开通综合.数据仓库.数据分析.产品经理.数据治理及机器学习六大专业群,加微信号frank61822702 为好友后入群.新开招聘微信群,请关注[与数据同行]公众号,后台回复" ...

  7. ML算法工程师的三个层次

    这里说的算法,并不是计算机系本科课程<算法与数据结构>里那个算法.那门课里讲的,是排序.查找这类"确定性算法":而这里我们说的,是用统计方法对数据进行建模的" ...

  8. 20万到100万年薪的算法工程师有什么区别?

    公元七世纪,在车迟国国家气象局组织的一次求雨活动中,虎力.鹿力.羊力三位大仙成功地祈下甘霖,救黎民于水火中.老国王虽然不明就里,却从此尊他们为国师,奉道教为圭臬. 本世纪,算法工程师们的境遇也差不多: ...

  9. 人工智能工程师学习路线/自然语言处理算法工程师

    人工智能工程师学习路线/自然语言处理算法工程师学习路径 人工智能工程师学习路线自然语言处理算法工程师学习路径 1入门级别 1 数据结构 2 算法重点 3python 2进阶阶段 1 机器学习算法 2深 ...

最新文章

  1. java proguard 使用_一步步教你使用Proguard混淆Java源代码
  2. 使用Google OAuth 2.0存取Google API (Google Client ID)
  3. CXF WebService视频教程,自己录的(更新第7集 异步调用 2009.1.15)。
  4. ppsspp java模拟_jar模拟器 免费版|java程序模拟软件
  5. 数据结构与算法书籍汇总(从小白到大神)
  6. R实战 | Nomogram(诺莫图/列线图)及其Calibration校准曲线绘制
  7. ET99加密狗软件加密锁ET99开发工具下载
  8. Dns数据包内容分析
  9. 外国优秀网页html,200个优秀的国外设计网站推荐
  10. 图片旋转90度解决办法
  11. Vue3 element-ui实现Pagination分页组件--封装分页
  12. 计算机硬盘 打开很慢,电脑硬盘运行速度慢如何解决 电脑硬盘运行速度慢解决方法【介绍】...
  13. freemarker字符串替换操作
  14. 4--STM32RCC时钟树
  15. Python (2)
  16. 【H5+ Quick-cocos2dx整合】之iOS 二 集成H5+ SDK
  17. 速算24点java_HDU-1427-速算24点
  18. Unity调用Face++ 人脸识别 Detect API
  19. 淘宝客网站架构设计方案
  20. (附源码)计算机毕业设计Java大学生体检管理系统

热门文章

  1. 香港大学 计算机学院 笔试题目,港大计算机 HKU CS面试准备
  2. 数字拆分问题算法回溯_数字方阵2 题解 回溯算法
  3. 受让人违反专利实施许可合同有什么后果
  4. 读书笔记之《百年孤独》
  5. 如何用私域流量让不知名新品牌大放异彩……
  6. 操作系统实验一:操作系统初步 实验报告
  7. [附源码]JAVA毕业设计美容院业务管理系统(系统+LW)
  8. 春节Python抢票神器,支持候补抢票!你买好票了吗!
  9. WordPress 开发带缩略图随机文章小工具
  10. 11.1.0 Web 打印新支持 UGC 布局模板