Linux 基础入门(新版)学习笔记

实验二 基本概念及操作

重要快捷键

  • Tab 补全命令
  • Ctrl+c 强行终止当前命令

历史命令

  • 方向上键↑,恢复之前输入过的命令

通配符

在命令行中获取帮助

  • 某个命令的说明和使用方式的详细介绍
$ man <command_name>
  • 查看 man 命令本身的使用方式
man man

  • 要查看相应区段的内容,就在 man 后面加上相应区段的数字即可,如:
$ man 1 ls

实验三 用户及文件管理权限

作业

添加一个用户 loutest,使用 sudo 创建文件 /opt/forloutest,设置成用户 loutest 可以读写。

运行结果



实验四 Linux 目录结构及文件基本操作

一、Linux目录结构

1、FHS标准

  • FHS(Filesystem Hierarchy Standard ,文件系统层次结构标准)
  • FHS 定义了两层规范:
    • 第一层是, / 下面的各个目录应该要放什么文件数据,

      例如 /etc 应该放置设置文件,/bin 与 /sbin 则应该放置可执行文件等等
    • 第二层则是针对 /usr 及 /var 这两个目录的子目录来定义。

      例如 /var/log 放置系统日志文件,/usr/share 放置共享数据等等

2、目录路径

  • 使用 cd 命令可以切换目录,在 Linux 里面使用 . 表示当前目录,.. 表示上一级目录

    注意:以 . 开头的文件都是隐藏文件,所以这两个目录必然也是隐藏的,你可以使用 ls -a 命令查看隐藏文件

    -表示上一次所在目录,~通常表示当前用户的 home 目录。

    使用 pwd 命令可以获取当前所在路径(绝对路径)。
  • 绝对路径:以根" / "目录为起点的完整路径,以你所要到的目录为终点,

    表现形式如: /usr/local/bin,表示根目录下的 usr 目录中的 local 目录中的 bin 目录
  • 相对路径:就是相对于你当前的目录的路径,相对路径是以当前目录 . 为起点,以你所要到的目录为终点,

    表现形式如: usr/local/bin (这里假设你当前目录为根目录),如果是当前目录的上一级目录,则需要使用 .. ,

    比如你当前目录为 /home/shiyanlou 目录下,根目录就应该表示为 ../../ ,表示上一级目录( home 目录)的上一级目录( / 目录)

二、Linux文件的基本操作

1、新建

  • 空白文件 touch命令
  • 目录 mkdir(make directories)命令

    使用 -p 参数,同时创建父目录(如果不存在该父目录),(在安装软件、配置安装路径时非常有用)

2、复制

  • 文件 cp(copy)命令
  • 目录 需要加上 -r 或者 -R 参数,表示递归复制

3、删除

  • 文件 rm(remove files or directories)命令

    删除一些为只读权限的文件,使用 -f 参数强制删除
  • 目录 需要加上 -r 或 -R 参数

4、移动文件与文件重命名

  • 移动文件 mv(move or rename files)命令

  • 重命名文件 mv

    讲文件file1重命名为myfile

  • 批量重命名 rename

    使用通配符批量创建 5 个文件;批量将这 5 个后缀为 .txt 的文本文件重命名为以 .c 为后缀的文件;批量将这 5 个文件,文件名和后缀改为大写——

5、查看文件

  • cat 正序显示

  • tac 倒序显示

    查看从/etc目录下拷贝来的文件



    加上-n参数显示分行

  • nl 命令,添加行号并打印,这是个比 cat -n 更专业的行号打印命令。

    • -b : 指定添加行号的方式,主要有两种:

      -b a:表示无论是否为空行,同样列出行号("cat -n"就是这种方式)

      -b t:只列出非空行的编号并列出(默认为这种方式)
    • -n : 设置行号的样式,主要有三种:

      -n ln:在行号字段最左端显示

      -n rn:在行号字段最右边显示,且不加 0

      -n rz:在行号字段最右边显示,且加 0
    • -w : 行号字段占用的位数(默认为 6 位)
  • more/less 分页显示

  • tail 查看新增加的用户



    只看一行, 加上 -n 参数,后面紧跟行数

6、查看文件类型

  • file 命令

7、编辑文件

  • vimtutor

作业

创建一个 homework 目录,建立名为 1.txt~10.txt 文件,并删除 1.txt~5.txt 。

运行结果

实验五 环境变量与文件查找

环境变量

1、变量

  • 创建变量:declare 命令
  • 赋值:= 运算符
  • 读取变量的值:echo 命令和 $ 符号($ 符号用于表示引用一个变量的值)
  • 以下三个命令用于打印环境变量信息,区别在于涉及的变量范围不同:



  • 使用 vimdiff 工具可以更直观的比较一下它们之间的差别
  • 永久生效: /etc/bashrc(有的 Linux 没有这个文件) 和 /etc/profile ,它们分别存放的是 shell 变量和环境变量

    .profile 只对当前用户永久生效。而写在 /etc/profile 里面的是对所有用户永久生效,所以如果想要添加一个永久生效的环境变量,只需要打开 /etc/profile,在最后加上想添加的环境变量就可以。

2、命令的查找路径与顺序

2019-2020-1 20199308《Linux内核原理与分析》第一周作业的更多相关文章

  1. Linux内核原理与分析-第一周作业

    本科期间,学校开设过linux相关的课程,当时的学习方式主要以课堂听授为主.虽然老师也提供了相关的学习教材跟参考材料,但是整体学下来感觉收获并不是太大,现在回想起来,主要还是由于自己课下没有及时动手实 ...

  2. 2019-2020-1 20199314 <Linux内核原理与分析>第一周作业

    前言 本周对实验楼的Linux基础入门进行了学习,目前学习到实验九完成到挑战二. 学习和实验内容 快速学习了Linux系统的发展历程及其简介,学习了下的变量.用户权限管理.文件打包及压缩.常用命令的和 ...

  3. 2019-2020-1 20199303<Linux内核原理与分析>第二周作业

    2019-2020-1 20199303第二周作业 1.汇编与寄存器的学习 寄存器是中央处理器内的组成部份.寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令.数据和位址.在中央处理器的控制部件中 ...

  4. 20169219 linux内核原理与分析第二周作业

    "linux内核分析"的第一讲主要讲了计算机的体系结构,和各寄存器之间对数据的处理过程. 通用寄存器 AX:累加器 BX:基地址寄存器 CX:计数寄存器 DX:数据寄存器 BP:堆 ...

  5. 2019-2020-1 20199314 <Linux内核原理与分析>第二周作业

    1.基础学习内容 1.1 冯诺依曼体系结构 计算机由控制器.运算器.存储器.输入设备.输出设备五部分组成. 1.1.1 冯诺依曼计算机特点 (1)采用存储程序方式,指令和数据不加区别混合存储在同一个存 ...

  6. Linux内核原理与分析-第二周作业

    写之前回看了一遍秒速五厘米:如果

  7. 2018-2019-1 20189221《Linux内核原理与分析》第一周作业

    Linux内核原理与分析 - 第一周作业 实验1 Linux系统简介 Linux历史 1991 年 10 月,Linus Torvalds想在自己的电脑上运行UNIX,可是 UNIX 的商业版本非常昂 ...

  8. 2020-2021-1 20209307 《Linux内核原理与分析》第九周作业

    这个作业属于哪个课程 <2020-2021-1Linux内核原理与分析)> 这个作业要求在哪里 <2020-2021-1Linux内核原理与分析第九周作业> 这个作业的目标 & ...

  9. 2019-2020-1 20199329《Linux内核原理与分析》第十三周作业

    <Linux内核原理与分析>第十三周作业 一.本周内容概述 通过重现缓冲区溢出攻击来理解漏洞 二.本周学习内容 1.实验简介 注意:实验中命令在 xfce 终端中输入,前面有 $ 的内容为 ...

  10. 2019-2020-1 20199329《Linux内核原理与分析》第十二周作业

    <Linux内核原理与分析>第十二周作业 一.本周内容概述: 通过编程理解 Set-UID 的运行机制与安全问题 完成实验楼上的<SET-UID程序漏洞实验> 二.本周学习内容 ...

随机推荐

  1. 性能优化之三:将Dottrace过程加入持续集成

    之前分享过一篇如何做接口性能分析的文章,但是整个分析过程有点繁琐,需要写一个控制台程序调用被测接口,再预热.启动dottrace追踪,最后才能得到我们想要的性能分析报告.如果有办法一键生成性能分析报告 ...

  2. Asp.Net.Core WebApi 版本控制

    前言 在后端Api的开发过程中,无法避免的会遇到接口迭代的过程,如何保证新老接口的共存和接口的向前的兼容呢,这时候就需要对Api进行版本的控制,那如何优雅的控制Api的版本呢? 开始 Microsof ...

  3. java+lodop+vue+热敏打印机,打印图片

    1.根据需求生成图片模板,详情见 https://www.cnblogs.com/xiaokangk/p/11151774.html 2.下载lodop并进行安装(安装步骤详情百度) 3.安装热敏打印 ...

  4. LeetCode 题解 | 70. 爬楼梯

    假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数. 示例 1: 输入: 2 输出: 2 解释: 有两 ...

  5. ELK数据批量导入

                                                                            数据批量导入 • 使用 _bulk 批量导入数据 – 批 ...

  6. Javascript 入门 必备知识点

    1.如何得到html的input标签的值: (1). $('#id').val(); (2). $("#id").attr("value"); 2.javasc ...

  7. JS 的事件基础、事件侦听与抛发、

    前言 JavaScript是一种事件驱动型语言.事件驱动是指JavaScript引擎并不是在看到代码之后就会立即执行,而是会在合适的时间才去执行.这个合适的时间是指当某个事件发生之后(例如一个输入框的 ...

  8. 疲劳驾驶打瞌睡?python保障您的驾驶安全

    道路千万条,安全第一条!疲劳驾驶可谓交通事故几大罪魁祸首之一,根据美国一项研究显示,司机睡眠不足4小时,交通事故肇事几率等同于醉驾. 为了减少疲劳驾驶现象,驾驶员疲劳检测应运而生.这是一项安全技术,可 ...

  9. 惊呆了,Servlet Filter和Spring MVC Interceptor的实现居然这么简单

    前言 创建型:单例模式,工厂模式,建造者模式,原型模式 结构型:桥接模式,代理模式,装饰器模式,适配器模式,门面模式,组合模式,享元模式 行为型:观察者模式,模板模式,策略模式,责任链模式,状态模式, ...

  10. stand up meeting for beta release plan 12/16/2015

    今天我们开会讨论一下beta版需要的feature,其中待定的feature是可选做的,如果有时间.其他都是必须实现的. 因为做插件的计划失败了,所以我们现在是pdf阅读器和取词查词加入生词本这两部分 ...