知识点积累系列(六)操作系统(Linux+Windows+MacOS)篇【持续更新】

云原生学习路线导航页(持续更新中)

本文是 知识点积累 系列文章的第六篇,记录日常学习中遇到的 操作系统相关 的知识点,包括 Linux、Windows、MacOS等

1.Linux相关

1.1.shell脚本

1.2.命令相关

1.2.1.vim命令

1.2.2.nslookup命令

1.2.3.curl命令

1.2.4.nano命令

  • nano是一个符终端的文本编辑器,比vi/vim使用更简单些
  • 命令详解:https://wangchujiang.com/linux-command/c/nano.html

1.2.5.ls命令

  • ls怎么查看文件大小
    ls [-lh] [-s]
    -l:以长格式显示文件和目录的列表,以字节为单位显示大小。(请参见下面的示例。)
    -h:文件或目录大小大于 1024 字节时,请以 KB、MB、GB 或 TB 来表示文件大小和目录大小。此选项还可以修改 -o、-n、-@ 和 -g 选项显示的输出,以使用新格式显示文件或目录大小。有关更多信息,请参见 ls(1) 手册页。
    -s:显示文件和目录(以块为单位)的列表。
    

1.2.6.make命令

  • make是最常用的构建工具,诞生于1977年,主要用于C语言的项目。可以用来编译和安装 各种内核和开源项目。
  • makefile:描述项目代码的依赖关系,make命令就是依赖这个文件,对项目进行编译的
  • 学习博客:https://www.ruanyifeng.com/blog/2015/02/make.html

1.2.7.netstat命令

  • netstat命令用于显示网络状态,学习博客:https://www.runoob.com/linux/linux-comm-netstat.html
  • netstat输出结果默认有6列
    Proto   Recv-Q   Send-Q   Local Address  Foreign Address  State
    
    • Proto:协议,TCP/UDP
    • Local Address:网络连接是有2方参与,Local Address表示自己这方的地址 ip:port
    • Foreign Address:网络连接是有2方参与,Foreign Address表示对面那方的地址 ip:port
    • State:表示当前的网络连接中,自己这方处于出于什么阶段。
      • 这就是3次握手、4次挥手的那些状态
      • 比如:客户端关闭连接,我们立马执行netstat,可以看到客户端的tcp连接,处于TIME_WAIT状态,这就是在等待2个MSL后,才能关闭连接
      root@graham-virtual-machine:~# netstat | grep 34819
      tcp        0      0 localhost:51908         localhost:34819         TIME_WAIT
      

1.2.8.ps命令

  • ps命令能够给出当前系统中进程的快照,注意是执行命令那一时刻的快照。动态的话,需要使用top命令
  • 学习博客参考:
    • https://linux.cn/article-4743-1.html
    • https://www.runoob.com/linux/linux-comm-ps.html

1.2.9.ufw命令

  • ufw 是 Uncomplicated Firewall 的简称,是linux用来管理防火墙的命令
  • 常用操作:
    • 查看 当前防火墙 开放端口的情况
      sudo ufw status
      
    • 开放指定端口
      sudo ufw allow 12345
      
  • 具体的学习博客:https://www.zzxworld.com/posts/linux-ufw-firewall-command

1.2.10.telnet命令

  • telnet 通常用于远程登录,或者用于测试一个ip+port是否畅通

  • 常用命令:

    • 远程登录,能登录上就说明是畅通的
      telnet ip port
      
  • windows下没有telnet的问题

    • windows下默认没有开启telnet,需要在控制面板->windows功能->telnet客户端开启
    • 如果还不能远程连接,再按win+R,打开运行窗口,输入services.msc,打开服务窗口,把这个服务开启
      在这里插入图片描述
  • telnet学习博客:

    • https://cloud.tencent.com/developer/article/2113234
    • https://blog.csdn.net/u011561335/article/details/84781236

1.2.11.iptables命令

  • iptables原理:https://zhuanlan.zhihu.com/p/545054578
  • iptables命令学习:https://wangchujiang.com/linux-command/c/iptables.html

1.3.Linux琐碎知识点

1.3.1.GNU 是什么,和 Linux 是什么关系?

  • 以下内容是从 https://www.zhihu.com/question/319783573/answer/656033035 拷贝的一个匿名评论,说的很清楚
    • Unix 系统被发明之后,大家用的很爽。但是后来开始收费和商业闭源了。
    • 一个叫 RMS 的大叔觉得很不爽,于是发起 GNU 计划(GNU’s Not Unix),模仿 Unix 的界面和使用方式,从头做一个开源的版本。
    • 然后他自己做了编辑器 Emacs 和编译器 GCC。因此,GNU 是一个计划或者叫运动。
    • 在这个旗帜下成立了 FSF,起草了 GPL 等。
    • 接下来大家纷纷在 GNU 计划下做了很多的工作和项目,基本实现了当初的计划。包括核心的 gcc 和 glibc。
    • 但是 GNU 系统缺少操作系统内核。原定的内核叫 HURD,一直完不成。同时 BSD(一种 UNIX 发行版)陷入版权纠纷,x86 平台开发暂停。
    • 然后一个叫 Linus 的同学为了在 PC 上运行 Unix,在 Minix 的启发下,开发了 Linux。注意,Linux 只是一个系统内核,系统启动之后使用的仍然是 gcc 和 bash 等软件。
    • Linus 在发布 Linux 的时候选择了 GPL,因此符合 GNU 的宗旨。
    • 最后,大家突然发现,这玩意不正好是 GNU 计划缺的么。于是合在一起打包发布叫 GNU / Linux。然后大家念着念着省掉了前面部分,变成了 Linux 系统。

1.3.2.什么是GPL协议

  • GPL,全称 General Public License,通用公共授权协议,常用的开源协议。最早是由斯托曼撰写,用于GNU计划
  • 科普性学习:
    • https://zhuanlan.zhihu.com/p/36091228
    • https://blog.csdn.net/qq_41458207/article/details/104449098

2.windows相关

2.1.查看端口占用

  • netstat -aon|findstr “8081”
  • https://www.runoob.com/w3cnote/windows-finds-port-usage.html

3.MacOS相关

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/442954.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python算法题集_合并区间

本文为Python算法题集之一的代码示例 题目56:合并区间 说明:以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] [starti, endi] 。请你合并所有重叠的区间,并返回 一个不重叠的区间数组,该数组需…

Python模型预测库之shapash使用详解

概要 在机器学习领域,模型的可解释性对于理解模型的决策过程和进行决策支持非常重要。Python Shapash 库是一个强大的工具,旨在帮助数据科学家和机器学习工程师可视化和解释模型的预测结果。本文将深入探讨 Python Shapash 库的功能、用法以及如何在实际…

面试必考精华版Leetcode450. 删除二叉搜索树中的节点

题目: 代码(首刷看解析): class Solution { public:TreeNode* deleteNode(TreeNode* root, int key) {if(rootnullptr){return nullptr;}if(root->val > key ){root->left deleteNode(root->left,key);return root;…

实验3:利用Linux的消息队列通信机制实现三个线程间的通信

调用原型 POSIX信号量–无名信号量 POSIX信号量是Pthread线程库提供的一种同步机制,包括无名信号量和有名信号量两种机制。无名信号量,常用于多线程间的同步,也可用于相关进程间的同步(需置于相关进程间的共享内存区中&#xff…

【深度学习每日小知识】Model Accuracy 模型准确率

Model Accuracy 模型准确率 模型准确性是衡量机器学习 (ML) 模型基于数据做出预测或决策的能力的指标。它是用于评估 ML 模型性能的常用指标,可用于比较不同模型的性能或评估特定模型对于给定任务的有效性。 有多种不同的方法来衡量模型的准确性,具体取…

【知识图谱--第一讲概论】

深度学习–连接主义 知识图谱–符号主义 表示 有属性图和RDF图两种 RDF由三元组表示:Subject - Predicate - Object 存储 图数据库 抽取 融合 推理 问答 图算法

鸿蒙开发(ArkUI)—分析DatePicker组件

一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、DatePicker组件 日期选择器组件,用于根据指定日期范围创建日期滑动选择器。 子组件 无。 接口 DatePicker(options?: {start?: Date, end?: Date, selected?: …

心灵鸡汤美文:温暖你的每一寸心田

1.人生就像一杯茶,不会苦一辈子,但总会苦一阵子。只有经历过苦涩,才能品味到甜美的滋味。 2.每一次失败都是一次宝贵的经验,它教会我们如何更好地面对困难和挑战。不要害怕失败,因为失败是成功的前奏。 3.人生最重要的…

第九节HarmonyOS 常用基础组件20-Divider

1、描述 提供分割器组件,分割不同内容块或内容元素。 2、接口 Divider() 3、属性 名称 参数类型 描述 vertical boolean 使用水平分割线还是垂直分割线。 false:水平分割线 true:垂直分割线 color ResourceColor 分割线颜色 默认…

STL标准模版在VS2019中的使用方法

STL标准模版在VS2019中的使用方法 1.STL在VS2019中的位置 1.STL在VS2019中的位置 1.1找到程序安装位置: D:\visual_studio\IDE\VC\Tools\MSVC\14.29.30133\include

I.MX6ULL_Linux_驱动篇(53)linux USB驱动

I.MX6ULL USB 接口简介 I.MX6ULL 内部集成了两个独立的 USB 控制器,这两个 USB 控制器都支持 OTG 功能。I.MX6ULL 内部 USB 控制器特性如下: ①、有两个 USB2.0 控制器内核分别为 Core0 和 Core1,这两个 Core 分别连接到 OTG1 和OTG2。 ②、…

【每日一题】2670. 找出不同元素数目差数组-2024.1.31

题目: 2670. 找出不同元素数目差数组 给你一个下标从 0 开始的数组 nums ,数组长度为 n 。 nums 的 不同元素数目差 数组可以用一个长度为 n 的数组 diff 表示,其中 diff[i] 等于前缀 nums[0, ..., i] 中不同元素的数目 减去 后缀 nums[i …