【Linux】-初识Linux
作者
:学Java的冬瓜
博客主页
:☀冬瓜的主页🌙
专栏
:【Linux】
分享
:逆着光行走,任风吹雨打。 ——《起风了》
主要内容
:Linux的一些最基本指令,Linux的小程序,Linux关于连网端口的指令,Linux关于文件的指令,使用Linux编写代码。
文章目录
- 一、什么是Linux?
- 二、Linux好玩的一些东西
- 1、Linux一些最基本指令
- 2、Linux小程序
- 3、LInux关于连网端口的指令
- @ 判断连网
- @ 查看端口
- @ 连接/关闭网络
- 4、Linux关于文件的指令
- @ 创建文件
- @ 查看文件
- @ 删除文件
- 5、安装vim/gcc
- 三、使用nano编写Linux代码
一、什么是Linux?
Linux定位以及前后端开发定位:
- Linux系统应用:
1> 作为企业后台服务器
2> 嵌入式Linux系统
3> 个人桌面应用,比如安卓系统是基于Linux内核的。 - 企业使用Linux系统作为后台服务器原因:
免费,开源,稳定,安全
。 - windows和Linux界面的区别:
Linux:Centos中的界面,其实是Centos中的一款软件,是以进程的形式存在于Linux操作系统中
Windows:界面和操作系统绑在一起,界面没加载完,操作系统就还没完成启动。 - 基本编程,系统编程,网络编程的区别?
基本编程
:接近底层,如写C语言代码,写算法
系统编程
:通过操作系统的接口进行业务处理,进程间通信、多线程编程、本地文件读写等等
网络编程
:可以理解为是系统编程的一个分支,依托于系统编程,加入了网络接口,在后台使用多线程等方式处理业务,往后写到数据库,往前写到浏览器。
二、Linux好玩的一些东西
1、Linux一些最基本指令
su -
:切换用户身份,从普通用户到超级用户
ctrl d
:从超级管理用户到普通用户
whoami
:查看当前用户
passwd
:修改密码(先切换到超级管理员,再用这个指令)
2、Linux小程序
例一:
跑动的火车
// 火车:有时候官方版本下载不了,就需要在非官方(epel)下载:
// sudo yum install -y epel-release)
[mhad@localhost ~]$ sudo yum install -y sl #安装
[sudo] password for mhad: #输入你的密码,这里是不会显示的
[mhad@localhost ~]$ sl #运行起来
例二:
画讲话的动物
[mhad@localhost ~]$ sudo yum install -y boxes
[sudo] password for mhad:
[mhad@localhost ~]$ echo Hello Linux | boxes -d cat/\ /\|`\\_,--="=--,_//`|\ ." :'. .': ". /==) _ : ' : _ (==|>/O\ _ /O\<|| \-"~` _ `~"-/ |>|`===. \_/ .===`|<.-"-. \===' | '===/ .-"-.
.---{'. '`}---\, .-'-. ,/---{.'. '}---.) `"---"` `~-===-~` `"---"` (
( Hello Linux )) (
'---------------------------------------'
例三:
使用Linux进入百度官网,浏览页面
[mhad@localhost ~]$ sudo yum install -y elinks
[sudo] password for mhad:
[mhad@localhost ~]$ elinks www.baidu.com
3、LInux关于连网端口的指令
@ 判断连网
ping -c2 www.baidu.com
:判断连网,如果有2条响应内容,则表示连网了;不联网则输出:ping: www.baidu.com: Name or service not known
@ 查看端口
ifconfig
:查看端口
[mhad@localhost ~]$ ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.221.128 netmask 255.255.255.0 broadcast 192.168.221.255inet6 fe80::f4f1:ac8c:cc14:6282 prefixlen 64 scopeid 0x20<link>ether 00:0c:29:f8:47:0a txqueuelen 1000 (Ethernet)RX packets 131961 bytes 186659338 (178.0 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 20528 bytes 1272300 (1.2 MiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536inet 127.0.0.1 netmask 255.0.0.0inet6 ::1 prefixlen 128 scopeid 0x10<host>loop txqueuelen 1 (Local Loopback)RX packets 68 bytes 5920 (5.7 KiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 68 bytes 5920 (5.7 KiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255ether 52:54:00:21:f6:09 txqueuelen 1000 (Ethernet)RX packets 0 bytes 0 (0.0 B)RX errors 0 dropped 0 overruns 0 frame 0TX packets 0 bytes 0 (0.0 B)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
@ 连接/关闭网络
sudo ifup ens33
:连接网络
sudo ifdown ens33
:关闭网络,如下:可以发现,关闭网络后,inet和inet6这两行都没有了
[mhad@localhost ~]$ sudo ifdown ens33
[sudo] password for mhad:
Device 'ens33' successfully disconnected.
[mhad@localhost ~]$ ifconfig
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500ether 00:0c:29:f8:47:0a txqueuelen 1000 (Ethernet)RX packets 131991 bytes 186661328 (178.0 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 20532 bytes 1272689 (1.2 MiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536inet 127.0.0.1 netmask 255.0.0.0inet6 ::1 prefixlen 128 scopeid 0x10<host>loop txqueuelen 1 (Local Loopback)RX packets 68 bytes 5920 (5.7 KiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 68 bytes 5920 (5.7 KiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500inet 192.168.122.1 netmask 255.255.255.0 broadcast 192.168.122.255ether 52:54:00:21:f6:09 txqueuelen 1000 (Ethernet)RX packets 0 bytes 0 (0.0 B)RX errors 0 dropped 0 overruns 0 frame 0TX packets 0 bytes 0 (0.0 B)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
4、Linux关于文件的指令
@ 创建文件
mkdir
:创建目录,在当前目录下创建目录。
cd
:切换目录
cd..
:回退到上级目录
pwd
:查看当前的根目录
示例1:
[mhad@localhost ~]$ mkdir Lession
[mhad@localhost ~]$ cd Lession
[mhad@localhost Lession]$ pwd
/home/mhad/Lession
@ 查看文件
ls
:当前目录下所有文件
ll
:当前目录下所有文件的详细信息,d开头是文件目录,-开头是普通文件
ls -l
:显示列表,但不包括隐藏文件,ls -l比ls显示当前目录更多信息。
ls -la(或ls -l -a)
:显示列表,包括隐藏文件 (以点开头的文件:隐藏文件
)
示例2:
[mhad@localhost ~]$ ls
a.out code Code.c Desktop Documents Downloads Lession Music Pictures Public Templates test.c Videos
[mhad@localhost ~]$
[mhad@localhost ~]$ ll
total 32
-rwxrwxr-x. 1 mhad mhad 8512 Mar 5 00:20 a.out
-rwxrwxr-x. 1 mhad mhad 8512 Mar 12 20:32 code
-rw-rw-r--. 1 mhad mhad 79 Mar 12 20:31 Code.c
drwxr-xr-x. 2 mhad mhad 6 Mar 2 21:33 Desktop
drwxr-xr-x. 2 mhad mhad 6 Mar 2 21:33 Documents
drwxr-xr-x. 2 mhad mhad 6 Mar 2 21:33 Downloads
drwxrwxr-x. 2 mhad mhad 6 Mar 12 21:10 Lession
drwxr-xr-x. 2 mhad mhad 6 Mar 2 21:33 Music
drwxr-xr-x. 2 mhad mhad 6 Mar 2 21:33 Pictures
drwxr-xr-x. 2 mhad mhad 6 Mar 2 21:33 Public
drwxr-xr-x. 2 mhad mhad 6 Mar 2 21:33 Templates
-rw-rw-r--. 1 mhad mhad 64 Mar 5 00:19 test.c
drwxr-xr-x. 2 mhad mhad 6 Mar 2 21:33 Videos
[mhad@localhost ~]$
@ 删除文件
rm 文件名
:删除文件
rm -rf 目录名
:删除目录
5、安装vim/gcc
[mhad@localhost Lession]$ sudo yum install -y vim
[mhad@localhost Lession]$ sudo yum install -y gcc #gcc是默认安装的
三、使用nano编写Linux代码
[mhad@localhost ~]$ touch code.c #创建Code.c文件
[mhad@localhost ~]$ nano code.c #nano 是一个Linux下很简单的文本编辑器,该指令表示进入code.c文件编辑
#include <stdio.h>
int main()
{printf("你好,Linux!\n");return 0;
}
[mhad@localhost ~]$ gcc -o code code.c #gcc是linux下的C编译器,该指令表示编译文件
[mhad@localhost ~]$ ls
code code.c #code是编译后产生的文件
[mhad@localhost ~]$ ./code #运行
你好,Linux!
相关文章:

【Linux】-初识Linux
作者:学Java的冬瓜 博客主页:☀冬瓜的主页🌙 专栏:【Linux】 分享:逆着光行走,任风吹雨打。 ——《起风了》 主要内容:Linux的一些最基本指令,Linux的小程序,Linux关于连…...

精选7个 Python 学习资源库,助你成为优秀的开发者
当你在学习编程时,很容易被大量的资源所吓到,不知道该从何开始。 GitHub 仓库是一个很好的起点,因为它们提供了一种非常实用的方式来了解实际的编程应用。你可以查看其他人的代码,并将其与自己的代码进行比较和学习。 当涉及到 …...

【大数据处理与可视化】三 、Pandas库的运用
【大数据处理与可视化】三 、Pandas库的运用实验目的实验内容实验步骤一、使用pandas库分别创建Series对象和DataFrame对象,并对创建的对象使用索引、排序等相关操作;练习DataFrame对象的统计计算和统计描述的功能。1&2、创建一个DataFrame(d…...

FPGA解码SDI视频任意尺寸缩放拼接输出 提供工程源码和技术支持
目录1、前言2、SDI理论练习3、设计思路和架构SDI摄像头Gv8601a单端转差GTX解串SDI解码VGA时序恢复YUV转RGB图像缩放FDMA图像缓存实现拼接HDMI驱动4、vivado工程详解5、上板调试验证并演示6、福利:工程代码的获取1、前言 FPGA实现SDI视频编解码目前有两种方案&#…...
线索二叉树结构
线索二叉树结构1.线索二插树的作用2.线索二叉树的定义3.线索二叉树的结构4. 线索二叉树的操作4.1. 建立一棵中序线索二叉树4.2. 在中序线索二叉树上查找任意结点的中序前驱结点4.3. 在中序线索二叉树上查找任意结点的中序后继结点4.4. 在中序线索二叉树上查找任意结点在先序下的…...

6.网络爬虫——BeautifulSoup详讲与实战
网络爬虫——BeautifulSoup详讲与实战BeautifulSoup简介:BS4下载安装BS4解析对象Tag节点遍历节点find_all()与find()find_all()find()豆瓣电影实战前言: 📝📝此专栏文章是专门针对网络爬虫基础,欢迎免费订阅&#…...
Vue:路由管理模式
三种模式 Vue.js 的路由管理有三种模式: Hash 模式(默认):在 URL 中使用 # 符号来管理路由。例如,http://example.com/#/about。这个模式的好处是可以避免浏览器向服务器发送不必要的请求,并且不需要特殊…...

7个最好的PDF编辑器,帮你像编辑Word一样编辑PDF
PDF 是具有数字思维的组织的重要交流工具。提供高效的工作流程和更好的安全性,可以创建重要文档并与客户、同事和员工共享。文档的布局已锁定,因此无论在什么设备上查看,格式都保持不变。这是让每个人保持一致的好方法——尤其是那些使用Micr…...

【数据结构】树的介绍
文章目录前言树的概念及结构树的概念树的表示树在实际中的运用二叉树的概念及结构二叉树的概念现实中的二叉树特殊的二叉树二叉树的性质二叉树的储存结构顺序存储链式存储写在最后前言 🚩本章给大家介绍一下树。树的难度相对于前面的数据结构来说,又高了…...

CoreDNS 性能优化
CoreDNS 作为 Kubernetes 集群的域名解析组件,如果性能不够可能会影响业务,本文介绍几种 CoreDNS 的性能优化手段。合理控制 CoreDNS 副本数考虑以下几种方式:根据集群规模预估 coredns 需要的副本数,直接调整 coredns deployment 的副本数:k…...
前端三剑客常见面试题及其答案
目录 1、什么是 HTML? 2、什么是 CSS? 3、什么是 JavaScript? 4、什么是盒模型? 5、什么是浮动? 6、什么是定位? 7、什么是选择器? 8、什么是事件? 前端的三剑客指的是 HTML…...

【DFS专题】深度优先搜索 “暴搜”优质题单推荐 10道题(C++ | 洛谷 | acwing)
文章目录题单一、模板 [极为重要]全排列DFS组合型DFS指数DFS二、专题烤鸡 (指数BFS)P1088 火星人 【全排列】P1149 火彩棒 [预处理 ]P2036 PERKETP1135 奇怪的电梯 暴力P1036 [NOIP2002 普及组] 选数 (组合)P1596 [USACO10OCT]Lake Counting …...
微信小程序自定义组件生命周期有哪些?
微信小程序自定义组件的生命周期函数分为三类: 创建时执行的生命周期函数、更新时执行的生命周期函数和销毁时执行的生命周期函数。 下面是具体的生命周期函数及其触发时机: 创建时执行的生命周期函数: created:在组件实例刚刚…...

Linux就该这么学(六)
一、从“/”开始 Linux 系统中的文件和目录名称是严格区分大小写的。例如,root、rOOt、rooT 均代表不同的目录,并且文件名称中不得包含斜杠(/)。Linux 系统中的文件存储结构如下图所示。 在 Linux 系统中,最常见的目录…...

目标检测算法——YOLOv5/v7/v8改进结合涨点Trick之Wise-IoU(超越CIOU/SIOU)
超越CIOU/SIOU | Wise-IoU助力YOLO强势涨点!!! 论文题目:Wise-IoU: Bounding Box Regression Loss with Dynamic Focusing Mechanism 论文链接:https://arxiv.org/abs/2301.10051 近年来的研究大多假设训练数据中的…...

【蓝桥杯选拔赛真题39】python输出数字组合 青少年组蓝桥杯python 选拔赛STEMA比赛真题解析
目录 python输出数字组合 一、题目要求 1、编程实现 2、输入输出...

网络安全工程师做什么?
网络安全很复杂。数字化转型、远程工作和不断变化的威胁形势需要不同的工具和不同的技能组合。 系统必须到位以保护端点、身份和无边界网络边界。负责处理这种复杂安全基础设施的工作角色是网络安全工程师。 简而言之,网络安全工程师是负责设计和实施组织安全系…...

总结:K8S运维常用命令
一、部署./kubectl apply -f biz-healing-pod.yaml 二、查看部署的资源1、podkubectl get pod -A:获取所有pod没有IP?用-o wide参数看详细信息:./kubectl get pod -n deepflow -o wide2、service查看hubble-manager命名空间下有哪些service/d…...

你是真的“C”——进行动态内存分配库函数的使用详解
你是真的“C”——申请动态空间库函数的使用详解😎前言🙌一、为什么需要动态内存分配?💞free 函数😘malloc 库函数😘calloc 库函数😘realloc 库函数😘总结撒花💞…...

Python|蓝桥杯进阶第五卷——数论
欢迎交流学习~~ 专栏: 蓝桥杯Python组刷题日寄 蓝桥杯进阶系列: 🏆 Python | 蓝桥杯进阶第一卷——字符串 🔎 Python | 蓝桥杯进阶第二卷——贪心 💝 Python | 蓝桥杯进阶第三卷——动态规划 ✈️ Python | 蓝桥杯进阶…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...

JavaSec-RCE
简介 RCE(Remote Code Execution),可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景:Groovy代码注入 Groovy是一种基于JVM的动态语言,语法简洁,支持闭包、动态类型和Java互操作性,…...
oracle与MySQL数据库之间数据同步的技术要点
Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异ÿ…...
VTK如何让部分单位不可见
最近遇到一个需求,需要让一个vtkDataSet中的部分单元不可见,查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行,是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示,主要是最后一个参数,透明度…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解
本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说,直接开始吧! 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

优选算法第十二讲:队列 + 宽搜 优先级队列
优选算法第十二讲:队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...
稳定币的深度剖析与展望
一、引言 在当今数字化浪潮席卷全球的时代,加密货币作为一种新兴的金融现象,正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而,加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下,稳定…...
作为测试我们应该关注redis哪些方面
1、功能测试 数据结构操作:验证字符串、列表、哈希、集合和有序的基本操作是否正确 持久化:测试aof和aof持久化机制,确保数据在开启后正确恢复。 事务:检查事务的原子性和回滚机制。 发布订阅:确保消息正确传递。 2、性…...