当前位置: 首页 > news >正文

【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

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

精选7个 Python 学习资源库,助你成为优秀的开发者

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

【大数据处理与可视化】三 、Pandas库的运用

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

FPGA解码SDI视频任意尺寸缩放拼接输出 提供工程源码和技术支持

目录1、前言2、SDI理论练习3、设计思路和架构SDI摄像头Gv8601a单端转差GTX解串SDI解码VGA时序恢复YUV转RGB图像缩放FDMA图像缓存实现拼接HDMI驱动4、vivado工程详解5、上板调试验证并演示6、福利&#xff1a;工程代码的获取1、前言 FPGA实现SDI视频编解码目前有两种方案&#…...

线索二叉树结构

线索二叉树结构1.线索二插树的作用2.线索二叉树的定义3.线索二叉树的结构4. 线索二叉树的操作4.1. 建立一棵中序线索二叉树4.2. 在中序线索二叉树上查找任意结点的中序前驱结点4.3. 在中序线索二叉树上查找任意结点的中序后继结点4.4. 在中序线索二叉树上查找任意结点在先序下的…...

6.网络爬虫——BeautifulSoup详讲与实战

网络爬虫——BeautifulSoup详讲与实战BeautifulSoup简介&#xff1a;BS4下载安装BS4解析对象Tag节点遍历节点find_all()与find()find_all()find()豆瓣电影实战前言&#xff1a; &#x1f4dd;​&#x1f4dd;​此专栏文章是专门针对网络爬虫基础&#xff0c;欢迎免费订阅&#…...

Vue:路由管理模式

三种模式 Vue.js 的路由管理有三种模式&#xff1a; Hash 模式&#xff08;默认&#xff09;&#xff1a;在 URL 中使用 # 符号来管理路由。例如&#xff0c;http://example.com/#/about。这个模式的好处是可以避免浏览器向服务器发送不必要的请求&#xff0c;并且不需要特殊…...

7个最好的PDF编辑器,帮你像编辑Word一样编辑PDF

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

【数据结构】树的介绍

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

CoreDNS 性能优化

CoreDNS 作为 Kubernetes 集群的域名解析组件&#xff0c;如果性能不够可能会影响业务&#xff0c;本文介绍几种 CoreDNS 的性能优化手段。合理控制 CoreDNS 副本数考虑以下几种方式:根据集群规模预估 coredns 需要的副本数&#xff0c;直接调整 coredns deployment 的副本数:k…...

前端三剑客常见面试题及其答案

目录 1、什么是 HTML&#xff1f; 2、什么是 CSS&#xff1f; 3、什么是 JavaScript&#xff1f; 4、什么是盒模型&#xff1f; 5、什么是浮动&#xff1f; 6、什么是定位&#xff1f; 7、什么是选择器&#xff1f; 8、什么是事件&#xff1f; 前端的三剑客指的是 HTML…...

【DFS专题】深度优先搜索 “暴搜”优质题单推荐 10道题(C++ | 洛谷 | acwing)

文章目录题单一、模板 [极为重要]全排列DFS组合型DFS指数DFS二、专题烤鸡 (指数BFS&#xff09;P1088 火星人 【全排列】P1149 火彩棒 [预处理 ]P2036 PERKETP1135 奇怪的电梯 暴力P1036 [NOIP2002 普及组] 选数 &#xff08;组合&#xff09;P1596 [USACO10OCT]Lake Counting …...

微信小程序自定义组件生命周期有哪些?

微信小程序自定义组件的生命周期函数分为三类&#xff1a; 创建时执行的生命周期函数、更新时执行的生命周期函数和销毁时执行的生命周期函数。 下面是具体的生命周期函数及其触发时机&#xff1a; 创建时执行的生命周期函数&#xff1a; created&#xff1a;在组件实例刚刚…...

Linux就该这么学(六)

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

目标检测算法——YOLOv5/v7/v8改进结合涨点Trick之Wise-IoU(超越CIOU/SIOU)

超越CIOU/SIOU | Wise-IoU助力YOLO强势涨点&#xff01;&#xff01;&#xff01; 论文题目&#xff1a;Wise-IoU: Bounding Box Regression Loss with Dynamic Focusing Mechanism 论文链接&#xff1a;https://arxiv.org/abs/2301.10051 ​ 近年来的研究大多假设训练数据中的…...

【蓝桥杯选拔赛真题39】python输出数字组合 青少年组蓝桥杯python 选拔赛STEMA比赛真题解析

目录 python输出数字组合 一、题目要求 1、编程实现 2、输入输出...

网络安全工程师做什么?

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

总结:K8S运维常用命令

一、部署./kubectl apply -f biz-healing-pod.yaml 二、查看部署的资源1、podkubectl get pod -A&#xff1a;获取所有pod没有IP&#xff1f;用-o wide参数看详细信息&#xff1a;./kubectl get pod -n deepflow -o wide2、service查看hubble-manager命名空间下有哪些service/d…...

你是真的“C”——进行动态内存分配库函数的使用详解

你是真的“C”——申请动态空间库函数的使用详解&#x1f60e;前言&#x1f64c;一、为什么需要动态内存分配&#xff1f;&#x1f49e;free 函数&#x1f618;malloc 库函数&#x1f618;calloc 库函数&#x1f618;realloc 库函数&#x1f618;总结撒花&#x1f49e;&#x1…...

Python|蓝桥杯进阶第五卷——数论

欢迎交流学习~~ 专栏&#xff1a; 蓝桥杯Python组刷题日寄 蓝桥杯进阶系列&#xff1a; &#x1f3c6; Python | 蓝桥杯进阶第一卷——字符串 &#x1f50e; Python | 蓝桥杯进阶第二卷——贪心 &#x1f49d; Python | 蓝桥杯进阶第三卷——动态规划 ✈️ Python | 蓝桥杯进阶…...

MPNet:旋转机械轻量化故障诊断模型详解python代码复现

目录 一、问题背景与挑战 二、MPNet核心架构 2.1 多分支特征融合模块(MBFM) 2.2 残差注意力金字塔模块(RAPM) 2.2.1 空间金字塔注意力(SPA) 2.2.2 金字塔残差块(PRBlock) 2.3 分类器设计 三、关键技术突破 3.1 多尺度特征融合 3.2 轻量化设计策略 3.3 抗噪声…...

Java 语言特性(面试系列2)

一、SQL 基础 1. 复杂查询 &#xff08;1&#xff09;连接查询&#xff08;JOIN&#xff09; 内连接&#xff08;INNER JOIN&#xff09;&#xff1a;返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...

C++实现分布式网络通信框架RPC(3)--rpc调用端

目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中&#xff0c;我们已经大致实现了rpc服务端的各项功能代…...

RocketMQ延迟消息机制

两种延迟消息 RocketMQ中提供了两种延迟消息机制 指定固定的延迟级别 通过在Message中设定一个MessageDelayLevel参数&#xff0c;对应18个预设的延迟级别指定时间点的延迟级别 通过在Message中设定一个DeliverTimeMS指定一个Long类型表示的具体时间点。到了时间点后&#xf…...

阿里云ACP云计算备考笔记 (5)——弹性伸缩

目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包&#xff1a;import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序&#xff08;自然排序和定制排序&#xff09;Arrays.binarySearch()通过二分搜索法进行查找&#xff08;前提&#xff1a;数组是…...

Nuxt.js 中的路由配置详解

Nuxt.js 通过其内置的路由系统简化了应用的路由配置&#xff0c;使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...

ElasticSearch搜索引擎之倒排索引及其底层算法

文章目录 一、搜索引擎1、什么是搜索引擎?2、搜索引擎的分类3、常用的搜索引擎4、搜索引擎的特点二、倒排索引1、简介2、为什么倒排索引不用B+树1.创建时间长,文件大。2.其次,树深,IO次数可怕。3.索引可能会失效。4.精准度差。三. 倒排索引四、算法1、Term Index的算法2、 …...

Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)

在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马&#xff08;服务器方面的&#xff09;的原理&#xff0c;连接&#xff0c;以及各种木马及连接工具的分享 文件木马&#xff1a;https://w…...

用机器学习破解新能源领域的“弃风”难题

音乐发烧友深有体会&#xff0c;玩音乐的本质就是玩电网。火电声音偏暖&#xff0c;水电偏冷&#xff0c;风电偏空旷。至于太阳能发的电&#xff0c;则略显朦胧和单薄。 不知你是否有感觉&#xff0c;近两年家里的音响声音越来越冷&#xff0c;听起来越来越单薄&#xff1f; —…...