前言


这个专栏其实是博主在复习操作系统和计算机网络时候的笔记,所以如果是博主比较熟悉的知识点,博主可能就直接跳过了,但是所有重要的知识点,在这个专栏里面都会提到!而且我也一定会保证这个专栏知识点的完整性,大家可以放心订阅~

栏目网址:操作系统和计算机网络从入门到深入

Linux 基础知识预备

1. 基本指令

touch

除了创建文件之外,还可以用来更新文件的最新修改时间

mkdir

带上-p选项可以创建一串目录

rmdir

默认只能删空目录

man

手册

cat

  • -b 对非空行输出编号
  • -n 对输出的所有行编号
  • -s 不输出多行空行

tac

反着打印

more

类似cat

  • -n 对输出的所有行编号
  • q 推出 more

如果cat之后看文件刷屏了,看不到最上面的内容,用more指令逐部分查看

less

less和more类似,但是使用less可以随意浏览文件,more只能向前移动,不能向后移动,而且less在查看之前不回加载整个文件。

2. 重定向

2.1 输出的重定向

  1. 输出重定向 ( > )
  2. 追加重定向 ( >> )

2.2 输入重定向

其实 cat file.txt完整的写法是cat < file.txt

file.txt的东西放到bak.txt里面去

cat file.txt > bak.txt

2. 基本指令2

head

如果只想查看文件前若干行

head file.txt # 默认查看前十行
head -3 file.txt # 查看前三行
tail -3 file.txt # 查看后三行

如果我现在想获取中间任何一段或者一行内容呢?

先重定向前面的内容,然后再tail就行。

head -1010 file.txt > middle.txt # 然后再用tail

但是这种方法要创建临时文件,不好!

head -1010 file.txt | tail -11 # 用管道就行了

date

查看时间,具体找man,这个很少用。

cal

看日历,具体找man,这个很少用。

find

这个选项很常用!

find ~ -name test.c # 查找~路径下的test.c

which

在系统路径中,去查找特定的指令所在的路径。

alias

给别的命令起别名

alias zhangsan='ls -al' # 只有在当次登陆有效

grep

注意:grep是大小写敏感的!

  • -i 忽略大小写,变成大小写不敏感
  • -n 输出行号
  • -v 反向选择,就是显示,没有"搜寻字符串"的内容

reboot

重启

uname -r

查看计算机体系结构

3. 权限(重要)

3.1 普通用户和超级用户

3.2 文件权限

Linux系统不以文件后缀来区分文件类型。

a.out换成什么后缀都能跑。

但是gcc test.txt不行的,gcc是个软件,不是linux的东西,他是分后缀的

  1. d 目录
  2. ‘-’ 普通文件
  3. p 管道文件
  4. b 块文件
  5. c 字符设备

拥有者,所属组,other的概念,很熟,不用复习了

rwx权限,很熟,不用复习了

改文件权限

很熟。

当然这个chmod后面跟数字的,也可以,也很熟了,不用复习。

假设现在一个文件的拥有者是yufc,现在想强制把这个东西丢给yufc2,也是会被限制权限的,不能随便给别人东西(root肯定是不受限制的)。

3.3 sudo

能使用sudo说明你是root的信任列表里面的。

而添加信任列表,是需要root身份的。

3.4 目录的权限(本质也是文件)

不用复习。很熟悉了。

进入一个目录:执行权限

如果没有r权限,执行ll会被拒绝,如果没有w权限,执行touch会被拒绝。

3.5 新文件默认权限

目录:755

普通文件:664

3.6 umask(重要)

这个需要重点复习。

其实创建一个目录的起始权限是777,创建一个普通文件的起始权限是666。

那为什么我们看到的是755和664?

是因为存在权限掩码umask

只用关注后三位。

最终权限 = 起始权&~umask

我们可以设置umask

比如设置一个极端的umask

umask 0777 # 这样就能让新文件的权限全部为0

3.7 删除一个文件所需要的权限

需要复习。

一个文件能否被删除不是由文件自己的属性决定的,而是由文件所属目录是否有x权限所决定的。

3.8 粘滞位(重要)

需要复习。

抛出一个问题场景,这个场景十分重要

当多个用户共享一个目录,需要在该目录下,进行读写,创建删除文件

但是自己只能删除自己的,而不能删除别人的(w权限:可以互删,不满足条件)

只能通过一个新的权限属性(粘滞位)来完成。

t就是表示粘滞位权限,可以看做x权限的一种特殊情况

注意:

  • 粘滞位只能给目录设置
  • 粘滞位一般是谁加的就只能谁去掉,除非你是root

4. vim

很熟悉。稍微复习一下即可。

复习一些常用的指令即可。

首先vim一般会用到两种模式,一种是命令模式,一种是编辑模式。

常见操作:

  • yy:将当前光标所在的行,复制
  • p: 粘贴(nyy和np就是复制n行,粘贴n行的意思)
  • u:撤销历史操作
  • ctrl+r :撤销u操作
  • dd:将当前光标所在的行进行剪切(删除),ndd同理,配合p使用就是剪切
  • shift+~:大小写切换
  • shift+r:进入替换模式
  • x/shift+x:删除光标所在自负,包括之前或者之后的,支持nx

光标定位:

  • shift+g:光标定位到文件的结尾
  • gg:光标定位到文件的最开始
  • n+shift+g:将光标定位到文件的任意行
  • shift+6:将光标定位到当前行的最开始
  • shift+4:将光标定位到当前行的结尾

底行模式

  • set nu:调出行号
  • set nonu:删除行号
  • vs test.c:实现分屏操作

5. gcc/g++

ESc编译的过程,很熟悉了,不再复习。

6. GDB

虽然忘记了,但不复习了,比较少用。

【操作系统到计网从入门到深入】(一)Linux基础知识预备的更多相关文章

  1. Linux基础知识入门

    [Linux基础]Linux基础知识入门及常见命令.   前言:最近刚安装了Linux系统, 所以学了一些最基本的操作, 在这里把自己总结的笔记记录在这里. 1,V8:192.168.40.10V1: ...

  2. 0.Python 爬虫之Scrapy入门实践指南(Scrapy基础知识)

    目录 0.0.Scrapy基础 0.1.Scrapy 框架图 0.2.Scrapy主要包括了以下组件: 0.3.Scrapy简单示例如下: 0.4.Scrapy运行流程如下: 0.5.还有什么? 0. ...

  3. 想入门Web安全,这些基础知识都学会了吗?

    毕业季已经正式告一段落,这届毕业生都找到心仪的工作了吗? 正在实习期或者试用期的职场新人,是否在岗位上做的风生水起? 工作了一两年,从未升职加薪的菜鸟,还愿意继续原地踏步吗? 在校学生.IT从业者.毕 ...

  4. Python入门方法推荐,哪些基础知识必学?

    很多想入门的小伙伴还不知道Python应该怎么学,哪些知识必学,今天我们就来盘点一下. 01.入门方法推荐 总体来讲,找一本靠谱的书,由浅入深,边看边练. 网上的学习教程有很多,多到不知道如何选择.所 ...

  5. Shiro learning - 入门学习 Shiro中的基础知识(1)

    Shiro入门学习 一 .什么是Shiro? 看一下官网对于 what is Shiro ? 的解释 Apache Shiro (pronounced “shee-roh”, the Japanese ...

  6. [Linux基础]Linux基础知识入门及常见命令.

    前言:最近刚安装了Linux系统, 所以学了一些最基本的操作, 在这里把自己总结的笔记记录在这里. 1,V8:192.168.40.10V1:192.168.40.11Linux ip:192.168 ...

  7. 【Asp.net入门01】动态网站基础知识

    本节将介绍: 网站搭建流程 动态网站相关基础概念 网页的访问原理 使用浏览器访问网站是我们几乎天天在做的事情.以前我们只需要关注网页内容,作为网站开发人员,从现在开始我们要关注更深层次的东西了. 1. ...

  8. Linux运维基础入门(一)网络基础知识梳理01

    一,计算机网络参考模型 1.1 OSI七层模型 1)物理层 主要功能是完成相邻节点之间原始比特流的传输.(网卡等) 物理层协议关心的典型问题是使用什么样的物理信号来表示数据1和0:持续的时间有多长:数 ...

  9. 初学者入门web前端:C#基础知识:函数

    入行前端对函数的掌握程度有可能直接影响以后工作的效率,使用函数可以高效的编写编码,节省时间,所以我整理了C#中最基础的函数知识点,虽然我在学习中 遇到很多问题,但是只要能够解决这些问题,都是好的. 一 ...

  10. 全面解读JavaScript入门到进阶,100%基础知识掌握!

    一.JavaScript 简介 1.JavaScript 是 Web 的编程语言,是前端开发必须掌握的三门语言之一,即: HTML   定义了网页的内容 CSS      描述了网页的布局 JavaS ...

随机推荐

  1. 悟空活动中台 - 基于 WebP 的图片高性能加载方案

    本文首发于 vivo互联网技术 微信公众号 链接: https://mp.weixin.qq.com/s/rSpWorfNTajtqq_pd7H-nw作者:悟空中台研发团队 一.背景 移动端网页的加载 ...

  2. vue学习笔记 十三、路由介绍

    系列导航 vue学习笔记 一.环境搭建 vue学习笔记 二.环境搭建+项目创建 vue学习笔记 三.文件和目录结构 vue学习笔记 四.定义组件(组件基本结构) vue学习笔记 五.创建子组件实例 v ...

  3. C语言哈希表uthash的使用方法详解(附下载链接)

    uthash简介   由于C语言本身不存在哈希,但是当需要使用哈希表的时候自己构建哈希会异常复杂.因此,我们可以调用开源的第三方头文件,这只是一个头文件:uthash.h.我们需要做的就是将头文件复制 ...

  4. uni-app editor富文本编辑器

    https://blog.csdn.net/xudejun/article/details/91508189

  5. python之logging日志

    一.logging介绍: 使用 logging.debug(text)来打印信息,info等的使用方法与debug一致,都只有一个位置参数 默认日志界别为:会输出warning以上的信息,代码示例: ...

  6. idea安装并使用maven依赖分析插件:Maven Helper

    本文为博主原创,转载请注明出处: 在maven工程中,经常会查看maven的依赖树,在没使用该插件时,需要maven dependency:tree命令进行查看依赖树, 通过maven helper ...

  7. 问题--去除CSDN水印

    1.问题如上 有时候需要使用其中的图片,但是水印很让人烦恼 确实可以用PS中的修复画笔工具,修复工具等进行处理 但是当水印覆盖到字体时,就会破坏到原有字体 2.解决方式 从CSDN添加水印的方式入手 ...

  8. 【MicroPython】用 c 添加接口 -- 框架介绍

    [来源]https://www.eemaker.com/micropython-c-kuangjia.html

  9. [转帖]Nginx Rewrite重写功能

    目录 一.rewrite的概述 1.1.概述 1.2 跳转场景 1.3 跳转实现 1.4 Rewrite实际场景 二.常用的nginx正则表达式 三.rewrite命令 3.1 rewrite的语法格 ...

  10. [转帖]Zookeeper集群搭建(3个节点为例)

    Zookeeper集群搭建 1.说明 本文用的linux版本:centos6,准备3台centos6虚拟机,给他们安装zookeeper,每一台的安装过程相同,你也可以安装一台,然后克隆出另外两台.主 ...