2019-2020-1 20199308《Linux内核原理与分析》第一周作业
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 位)
- -b : 指定添加行号的方式,主要有两种:
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内核原理与分析》第一周作业的更多相关文章
- Linux内核原理与分析-第一周作业
本科期间,学校开设过linux相关的课程,当时的学习方式主要以课堂听授为主.虽然老师也提供了相关的学习教材跟参考材料,但是整体学下来感觉收获并不是太大,现在回想起来,主要还是由于自己课下没有及时动手实 ...
- 2019-2020-1 20199314 <Linux内核原理与分析>第一周作业
前言 本周对实验楼的Linux基础入门进行了学习,目前学习到实验九完成到挑战二. 学习和实验内容 快速学习了Linux系统的发展历程及其简介,学习了下的变量.用户权限管理.文件打包及压缩.常用命令的和 ...
- 2019-2020-1 20199303<Linux内核原理与分析>第二周作业
2019-2020-1 20199303第二周作业 1.汇编与寄存器的学习 寄存器是中央处理器内的组成部份.寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令.数据和位址.在中央处理器的控制部件中 ...
- 20169219 linux内核原理与分析第二周作业
"linux内核分析"的第一讲主要讲了计算机的体系结构,和各寄存器之间对数据的处理过程. 通用寄存器 AX:累加器 BX:基地址寄存器 CX:计数寄存器 DX:数据寄存器 BP:堆 ...
- 2019-2020-1 20199314 <Linux内核原理与分析>第二周作业
1.基础学习内容 1.1 冯诺依曼体系结构 计算机由控制器.运算器.存储器.输入设备.输出设备五部分组成. 1.1.1 冯诺依曼计算机特点 (1)采用存储程序方式,指令和数据不加区别混合存储在同一个存 ...
- Linux内核原理与分析-第二周作业
写之前回看了一遍秒速五厘米:如果
- 2018-2019-1 20189221《Linux内核原理与分析》第一周作业
Linux内核原理与分析 - 第一周作业 实验1 Linux系统简介 Linux历史 1991 年 10 月,Linus Torvalds想在自己的电脑上运行UNIX,可是 UNIX 的商业版本非常昂 ...
- 2020-2021-1 20209307 《Linux内核原理与分析》第九周作业
这个作业属于哪个课程 <2020-2021-1Linux内核原理与分析)> 这个作业要求在哪里 <2020-2021-1Linux内核原理与分析第九周作业> 这个作业的目标 & ...
- 2019-2020-1 20199329《Linux内核原理与分析》第十三周作业
<Linux内核原理与分析>第十三周作业 一.本周内容概述 通过重现缓冲区溢出攻击来理解漏洞 二.本周学习内容 1.实验简介 注意:实验中命令在 xfce 终端中输入,前面有 $ 的内容为 ...
- 2019-2020-1 20199329《Linux内核原理与分析》第十二周作业
<Linux内核原理与分析>第十二周作业 一.本周内容概述: 通过编程理解 Set-UID 的运行机制与安全问题 完成实验楼上的<SET-UID程序漏洞实验> 二.本周学习内容 ...
随机推荐
- [vijos1304]回文数<模拟>
题目链接:https://vijos.org/p/1304 好久没写博客了,最近一直打不出题,感觉自己是废了,今天做了一道模拟水题,但还是半天没过,后来才发现是忘记考虐10以上的进制是带有字母的,然后 ...
- RADI
一.RADI分类 radi0: 优势:读性能提升,磁盘利用率百分百 缺点:没有容错,坏一个全坏.写性能下降 radi1 优势:有容错能力 缺点:消耗磁盘 radi5 优势:有容错能力,读写能力提升 缺 ...
- ajax请求以及递归
function f1() { console.log("hello"); f1(); }; f1();//浏览器崩溃,因为没有结束条件——死循环 改进如下: var i=0; f ...
- 小白快速使用fetch与后端交互
本人专心后端,但在完成页面碰到了交互,选择了fetch来完成, 总结了一下简单的使用fetch的方法. fetch是纯原生JS与后端交互的方法,请注意,Fetch规格不同于jQuery.ajax(), ...
- hadoop+zookeeper集群高可用搭建
hadoop+zookeeper集群高可用搭建 Senerity 发布于 2 ...
- PXE基础装机环境
PXE基础装机环境 案例1:PXE基础装机环境 案例2:配置并验证DHC ...
- Python等同于PHP的 strip_tags?
我感觉目前最好的方式 from django.utils.html import strip_tags
- Go gRPC教程-客户端流式RPC(四)
前言 上一篇介绍了服务端流式RPC,客户端发送请求到服务器,拿到一个流去读取返回的消息序列. 客户端读取返回的流的数据.本篇将介绍客户端流式RPC. 客户端流式RPC:与服务端流式RPC相反,客户端不 ...
- logger日志级别
Level 描述 ALL 各级包括自定义级别 DEBUG 指定细粒度信息事件是最有用的应用程序调试 ERROR 错误事件可能仍然允许应用程序继续运行 FATAL 指定非常严重的错误事件,这可能导致应用 ...
- EOS基础全家桶(七)合约表操作
简介 本篇我们开始来为后续合约开发做准备了,先来说说EOS内置的系统合约的功能吧,本篇将侧重于合约表数据的查询,这将有利于我们理解EOS的功能,并可以进行必要的数据查询. EOS基础全家桶(七)合约表 ...