Linux操作系统介绍
    肯.汤普逊 丹尼斯.里奇
    美国 贝尔实验室
    1970-1973
    BCPL->new B->C->UNIX系统->Minix->Linux

Linux管理硬盘的能力非常强,所以我们看到只有一个分区
    在UNIX/Linux中,一切皆文件

/   根目录,整个系统所有的文件都存储在它下面
    /bin    存储系统命令文件
    /dev    存储设备文件
    /etc    存储各种软件的配置文件
    /home   存储各个用户的用户主目录
    /lib    存放普通的库文件
    /media  存储外部文件系统文件,例如U盘、共享文件夹 
    /proc   存储进程的内存情况文件
    /usr    存储各种标准库头文件

特殊目录:
    /   根目录
    ~   用户主目录
    ..  上一层目录
    .   当前目录

注意:Linux的目录结构是倒悬树,目录的切换只能上下不能左右

绝对路径和相对路径:
        绝对路径:从根目录开始描述一个位置
                /home/ubuntu/下载
        相对路径:从当前工作目录开始描述一个位置

Linux系统命令:
    注意:UNIX/Linux不是为每个功能都分配一条命令

常用的命令:
        ls  显示当前工作目录下有哪些文件
            -a  显示隐藏文件,以 . 开头的都是隐藏文件
            -l  以长格式显示文件的详细信息
        cd  进入一个目录
        clear   清理屏幕    等同Ubuntu中的ctrl+l
        pwd 获取当前目录的绝对路径
        whoami  显示当前用户名
    
    文件的常用命令:
        touch filename  创建文件
        rm filename     删除文件,不经过回收站,要慎重
        cat/more/head/tail 查看文件
            cat 会把文件的全部内容显示到终端,适合查看内容较少的文件
            more 以分页来显示文件内容,回车下一行,空格下一页,q退出
            head 只显示开头10行
            tail 只显示末尾10行
        cp src dest 复制src到dest
        mv src dest 移动src到dest,也具备重命名的功能

目录相关命令:
    mkdir 创建目录
        -p  可以一次性创建多层目录
    rmdir 删除目录,只能删除空目录
        rm -rf  删除非空目录
    cp -r dest src  把dest目录复制到src
    mv dest src 移动目录\重命名目录名

网络相关命令:
    ifconfig    查看网络配置信息
        windows下是ipconfig
        sudo ifconfig enpxxx down   禁用网卡enpxxx
        sudo ifconfig enpxxx up     启用网卡enpxxx
        sudo ifconfig enpxxx 192.168.xx.xx netmask 255.255.xxx.xxx 修改ip地址和子网掩码
    
    ping ip地址/域名  测试网络是否连通
        ctrl+c  停止测试
        127.0.0.1 本机地址,可以用来测试网卡是否正常工作
        windows默认只测试4次,加参数 /t 连续测试,Ctrl+c停止

远程登录Linux服务器:   
    ftp ip地址 然后输入用户名和密码
        采用明码传输数据,不够安全,有被窃听的风险,一般用于公司内部使用
    telent ip地址 然后输入用户名和密码
        采用明码传输数据,不够安全,有被窃听的风险
    ssh 用户名@ip地址 然后输入密码
        采用加密方式传输数据,比较安全
        exit退出登录
    
其它相关命令:
    chmod   修改文件权限
        chmod mmm filename
            m = r(4) + w(2) + x(1)
            mmm = 自己、同组、其它
        chmod +/-r/w/x filename 所有用户一起增加或删除权限
        注意:目录必须拥有执行权限才能进入
    
    find 位置 条件 查询的目标
        例如:find / -name stdio.h  查找根目录下名字叫stdio.h的文件都在哪里
    
    grep "关键字" 文件名    过滤内容
        例如:grep "printf" stdio.h 过滤显示stdio.h中出现printf的语句
    
    sudo 获取超级管理员权限执行命令
    sudo reboot 重启
    sudo init 0 关机
    sudo apt-get upgrade 更新系统
    sudo apt-get update  更新软件源
    sudo apt-get install 软件名     安装软件

man key     查询帮助手册
        分章节查询
            1、系统命令
            2、系统函数
            3、标准库函数

Ubuntu系统使用小技巧:
    Ctrl+l 快速清屏 等同于命令clear
    tab 自动补全命令、文件、目录
    up\down 方向键调出历史命令
    Ctrl+Alt+t  快速打开终端
    Ctrl+Shift+t  在当前终端新建一个标签页
    Alt+Tab 快速切换程序
    Ctrl+Alt+方向键 切换工作区

重定向、管道、通配符:
    重定向:把命令的执行结果重新定义方向(写入文件)
        cmd > filename 如果文件不存在则新建再写入,如果文件存在则清空后写入
        cmd >> filename 如果文件不存在则新建再写入,如果文件存在则在末尾追加
    
    管道:相当于用一根管子把两个命令连接在一起,用一个命令的执行结果当做另一个命令的数据源
    cmd1 | cmd2
    例如:find / | grep "stdio"
        从根目录的所有文件中过滤名字中含有stdio关键字的文件
    
    通配符:可以使用通配符进行模糊操作命令
        ?   代表任意的一个字符
        *   代表任意多个的任意字符
                // sudo rm -rf /*   很危险

终端配置文件:
    gedit ~/.bashrc  打开终端配置文件,注意一定不要修改原来的内容,在末尾追加内容

#    精简命令提示符
    PS1="\u@\w$ "

#    创建目录并进入目录
    mk()
    {
        mkdir $1 && cd $1
    }
    保存关闭,终端输入 source ~/.bashrc 重新加载配置文件,使修改生效

简单的脚本文件:
    脚本:由系统命令组成的带有可执行权限的文本文件,执行脚本文件时里面的命令会被命令解释器shell所读取并执行

1、gedit project_create.sh 创建批量生成文件的脚本文件
    2、touch xxx xxx xxx    批量生成文件的系统命令
    3、保存退出,chmod +x project_create.sh   增加执行权限
    4、./project_create.sh 运行脚本
    5、chmod -x project_create.sh   删除执行权限

打字练习软件:typespeed
    注意:窗口至少80*24

vim文本编辑器:
    可以在终端采用纯键盘操作的一款文本编辑器,可以升级,可以扩展(安装插件)
    基本用法:
        进入vim: vim filename.c 文件存在则打开,不存在则新建后打开
        输入i     进入编辑模式,编写代码
        输入Esc退出编辑模式,输入ZZ保存退出
    
    vim的三大模式:
        正常模式:打开文件时默认就是正常模式,一般用于阅读文件,或者使用快捷键对文件进行快速操作
        编辑模式:用于编辑文件、编写代码
        行底模式:用于对vim进行一些高级操作、对vim的设置

模式之间的切换:
        正常  输入i  -> 编辑
        编辑  按Esc  -> 正常
        正常  输入:  -> 行底
        行底  按Esc  -> 正常
    
    正常模式的常用操作:
        光标移动:
            j k l h 
            gg  光标跳转到文件开头
            G   光标跳转到文件末尾
            n+回车  往下跳转n行
            n+减号  往上跳转n行
            nG      直接跳转到第n行
            vim file.c +n  打开后直接跳转到第n行
        删除代码:
            dd  删除光标所在一行代码
            ndd 删除光标下面n行代码
            dG  从光标处删除到文件末尾
            dgg 从光标处删除到文件开头
            d$  从光标处删除到行尾
            d^  从光标处删除到行首
            x   删除一个字符
            nx  删除n个字符
            dw/de   从光标处连续删除字符直到遇到空格停止
        
        复制、粘贴代码操作:
            yy  复制当前一行代码
            nyy 复制当前n行代码
            p   粘贴到当前光标的下一行
            P   粘贴到当前光标的上一行
        
        移动代码操作:
            删除的内容依然存在粘贴板中,通过p可以实现移动代码的效果
            xp  可以快速交换两个字符

替换代码操作:
            r    替换一个字符
            cw  替换一个单词
            R   进入替换模式
        
        撤销操作:
            u   撤销上一步操作
            Ctrl+r    取消撤销操作
        
        进入插入模式的操作:
            i   在当前光标的前面进入插入模式
            I   在当前行的行首进入插入模式
            a   在当前光标的后面进入插入模式
            A    在当前行的行尾进入插入模式
            o   在当前行的下一行插入一行空白行并进入插入模式
            O   在当前行的上一行插入一行空白行并进入插入模式
    
    编辑模式的操作:
        Ctrl+p  自动补全变量名、函数名...
        Ctrl+j/m  相当回车
        Ctrl+c    相当于Esc

行底模式的常用操作:
        :q  退出
        :w  保存
        :wq 保存退出
        :q! 强制退出
        :x  保存退出
        :X  加密,输入两次密码,然后输入:wq 才生效
            :set key=空格  删除密码 :wq 才生效
        :!cmd   执行系统命令
        :set nu 设置显示行号
        :set nonu   设置取消显示行号
        :/key   查询关键词key  n往下找,N往上找
        :%s/old/new 把所有关键字old,替换为new关键字
        :<n     n行代码向左缩进一次
        :>n     n行代码向右缩进一次
        
        注意:行底模式的所有设置都只在当前vim生效,如果想要一直有效,需要修改vim的配置文件(~/.vimrc)

Linux学习:简单基础的Linux系统命令相关推荐

  1. linux shell概述,Linux学习 -- Shell基础 -- 概述

    Shell是什么? 命令解释器 编程语言 Linux支持的Shell类型 cat /etc/shells 主要学习 bash 脚本执行方式 echo echo -e 单引号 -- 原始字符串  双引号 ...

  2. Linux学习-计算机基础

    Linux 学习-计算机基础 一.描述计算机的组成及其功能. 计算机系统是由硬件(Hardware)和软件(Software )两部分组成. 硬件: 从硬件基本结构上来讲,计算机是由运算器.控制器.存 ...

  3. Linux学习之VMware安装Linux

    前言 之前写过一篇VirtualBox安装Linux过程,这里写一篇VMware安装Linux的过程 本文原创,创作不易,转载请注明!!! 本文链接 个人博客:https://ronglin.fun/ ...

  4. Linux学习笔记---移植官方linux步骤(二)

    目录 修改网络驱动 修改 LAN8720 的复位 以及网络时钟 引脚驱动 修改fec1和fec2节点pinctrl-0属性 修改LAN8720A的PHY地址 修改 fec_main.c 文件 配置 L ...

  5. Linux学习笔记---移植官方linux步骤(一)

    使用的开发板是正点原子IMX6U-MINI  EMMC512M的开发板,这个板子也是移植的NXP官方linux,所以这里就直接从NXP官方的linux移植. 这里所说的移植,其实不是自己编写驱动文件等 ...

  6. Linux学习系列二:Linux中的常用命令

    这个系列的Linux教程主要参考刘遄老师的<Linux就该这么学>.用的系统是RHEL8,如果遇见一些命令出现问题,请首先检查自己的系统是否一致,如果不一致,可网上查一下系统间某些命令之间 ...

  7. Linux学习笔记(一):Linux常用命令

    linux学习笔记(一):Linux常用命令 ctrl + l 清屏 clear crtl + c 终止操作 Linux常用命令 文件处理命令 ls:list 功能:显示目录文件 选项: -a 显示所 ...

  8. 【Linux学习】基础篇 1.Linux/Window环境VScode实用插件安装

            无论在Linux和Window安装VScode后,都需要下载实用插件,VsCode支持多种语言,比如C/C++.Python.C#等,主要安装C/C++扩展包.  1.C/C++:基础 ...

  9. linux需要什么基础,学linux需要什么基础?

    近几年来,随着计算机网络的发展,越来越多的人学习 linux.对于想要从事运维工作或者从事智能开发方面的同学来说,学习 linux 是必要的.linux 的学习并不简单,那么这篇文章 w3cschoo ...

  10. Linux学习记录-01(Linux系统发展史)

    对计算机一直感觉很神秘,想要学习,奈何不是计算机专业出身,最近决定开始学习,也算是充实一下自己,希望自己可以坚持下去. 一.Linux系统 Linux是一套免费使用和自由传播的类Unix操作系统,是一 ...

最新文章

  1. 如何在分布式场景下生成全局唯一 ID ?
  2. java-高并发解决方案
  3. 【opencv4】opencv视频教程 C++(opencv教程)1、opencv介绍和环境搭建
  4. SqlCommandBuilder
  5. [连载]《C#通讯(串口和网络)框架的设计与实现》- 13.中英文版本切换设计
  6. keytool生成证书_基于 TrueLicense 的项目证书验证
  7. APPCAN学习笔记002---app快速开发AppCan.cn平台特色
  8. 佳博打印机ip地址修改软件_win10系统搜索不到共享打印机的问题
  9. 计算机主板的1117标识,AMS1117封装尺寸图_AMS1117引脚图及功能 - 全文
  10. 服务器网络销售软文,关于云服务器的软文
  11. SQL Server中Rowcount与@@Rowcount的用法 和set nocount on 也会更新@@Rowcount
  12. hMailServer之发送附件大小限制
  13. C语言sar图像几何校正,SAR图像几何校正方法与流程
  14. unity导入Standard Assets出现错误
  15. 为什么要用“设计模式”?(六大好处)
  16. 上海社保金额精确计算公式
  17. 金三银四,中高级测试面经,我不信你能看完!
  18. 告诫程序员们,大三/大四有必要去实习吗?
  19. 对标 Amazon Go,这家初创企业盯上了国内无人商店市场
  20. 搜狗输入法 状态栏 自带的好用工具

热门文章

  1. linux find 更新时间,Linux查找find命令详解
  2. 三国志战略版:Daniel武将分析_庞德
  3. 【转】GPS定位准确度CEP、RMS
  4. BIOS中英文对照表吐血推荐置顶
  5. 【ABS学习】ABS基础
  6. C语言进阶之路:如何去求任意两个数字的加减乘除问题
  7. java 实现加减乘除混合运算
  8. MVVM 学习之 生肖查询器
  9. java 清空string_java - 如何清除或清空StringBuilder?
  10. 百度百科词条中对PX的描述竟是“剧毒