Linux系统编程学习 NO.2 ——环境配置和基础指令的学习

news2024/11/29 4:35:42

操作系统根据使用方式分类

操作系统按照使用类型可分为图形化操作系统和指令操作系统。图形化操作系统的本质其实也是根据指令来操作的。指令更贴近操作系统的底层。而我在学习Linux系统编程时,采用命令行的方式来学习。
在这里插入图片描述
补充一个小知识:早期命令行操作系统的输入设备一般是键盘,而图形化界面操作系统的出现带来另一个输入设备,即鼠标。所以键盘鼠标不是一开始就一起出现的,是因为图形化界面操作系统的出现,衍生出了对于鼠标这一输入设备的需求

Linux学习的环境配置

1、裸机安装Linux或双系统学习(极不推荐)
2、配置Linux虚拟机(较不推荐)
3、使用云服务器(推荐)

云服务器学习

1、购买云服务器,选择最低配置即可。建议可以几个小伙伴何用一个,只是学习用途绝对是没有问题的。需要注意的是第一次登录需要重置root账户的密码
在这里插入图片描述

2、使用本地终端或者第三方远程登录软件如xshell来登录云服务器。
3、推荐使用用户账户来进行学习,这样可以模拟未来工作的使用场景,学习效果会更好。

登录云服务器指令

ssh 用户名@云服务器IP地址

如何增加新用户

添加加新用户指令

adduser 用户名

设置新用户密码指令

passwd 密码

在这里插入图片描述

删除用户

如果你的小伙伴不仅白蹭你的云服务器还对你破口大骂,这是你气不过想移除他的账号你可以这么做

userdel -r 用户名

Linux基本指令

指令的概念

Linux指令是Linux操作系统中可执行的命令,用于在命令行界面或终端窗口中执行各种操作,例如文件管理、文本编辑、进程管理、网络设置等等。Linux指令通常是由一个单词或多个单词组成的命令,可以带有参数和选项,以实现不同的功能。

1.ls指令

指令功能:对于目录,ls指令列出该目录下所有子目录和文件。对于文件,将列出文件名以及其他文件信息。
语法 :ls [选项] [目录或文件]
常用选项

-a 列出目录下所有文件,包括以.开头的隐含文件。
-d 将目录像文件一样显示,而不是显示其下的文件。如ls -d 指令目录
-i 输出文件的i节点的索引信息。如ls -ai 指令文件。
-k 以k字节的形式表示文件的大小。ls -alk 指定文件。
-l 列出文件的详细信息。
-n 用数字的UID,GID 代替名称。
-F 在每个文件名附上一个字符用于说明该文件的类型,"*“表示可执行普通文件;”/“表示目录;”@“表示符号链接;”|“表示FIFOs;”="表示套接字(sockets)。(目录类型自动识别)
-r 对目录反向排序
-t 以时间排序
-s 在文件名后面输出该文件的大小(大小排序)
-R 列出所有子目录下的文件(递归)
-1 一行只输出一个文件。

举例演示

ls -l 
ll

ls -l 等价于ll。这两条指令是一样的。
在这里插入图片描述
当然还可以拓展衍生出一些命令组合使用具体大家可以动手试试。我这里简单举例两个。

ll -a 列出当前目录下所有文件以及详细信息
ll -s 列出文件的详细信息和文件的大小

在这里插入图片描述

2.pwd指令

指令功能:显示用户当前所在的目录
语法:pwd
常用选项:无选项

举例

在这里插入图片描述
这里拓展一个小指令,即whoami指令,用于查看当前用户信息。
在这里插入图片描述

3.cd指令

Linux磁盘分区

在介绍这个指令之前,先介绍一下Linux系统磁盘文件分区的概念。Linux的磁盘目录结构一定是一颗多叉树。所以对于文件的增删查改,本质上就是对这颗多叉树的增删查改。
在这里插入图片描述
/分区,即根目录。存放所有文件和目录。home目录就是根目录下的一个子目录。用于存放用户的个人数据和配置文件。

绝对路径和相对路径

通常访问一个文件都是需要路径来进行定位的。路径定位文件具有唯一性。

绝对路径

绝对路径是指从文件系统的根目录开始描述文件或目录的路径。它包含完整的路径信息,从根目录开始一直到文件或目录的位置。在不同的操作系统中,绝对路径的表示方式可能有所不同。在Windows系统中,一个典型的绝对路径可能是:C:\Users\Administrator\Desktop\example.txt,其中C:\是根目录,Users是一级目录,Administrator是二级目录,Desktop是三级目录,example.txt是文件名。在Unix或Linux系统中,一个典型的绝对路径可能是:/home/user/example.txt,其中/表示根目录,home是一级目录,user是二级目录,example.txt是文件名。

相对路径

相对路径是指文件或目录相对于当前工作目录的路径。它不是从根目录开始的完整路径,而是从当前目录开始的路径。在命令行或代码中使用相对路径时,它们通常以“.”(表示当前目录)或“…”(表示上级目录)开头。相对路径可以方便地在同一文件夹或子文件夹中引用其他文件。

小结

绝对路径较长,通常用于配置固定文件等场景使用。
相对路径通常用于命令行输入使用。

在这里插入图片描述
指令功能:改变当前工作目录,将当前工作目录改变到指定的目录下。
语法:cd 目录名

举例演示

cd 目录名

在这里插入图片描述

cd .. 返回上级目录

在这里插入图片描述
当返回到根目录下,cd… 便无法再改变当前目录。

cd /home/user 绝对路径

在这里插入图片描述

cd ./dir1 相对路径

在这里插入图片描述

cd ~ 进入家目录

在这里插入图片描述

cd - 返回最近访问的目录

在这里插入图片描述

4.touch指令

指令功能:touch命令参数可更改文档或目录的时间日期,包括存取时间和更改时间,或者新建一个不存在的文件。
语法:touch [选项] [文件]
常用选项

-a 或者–time = atime或–time=use只更改存取时间。
-c 或–no-create 不建立任何文档。
-d 使用指定的日期时间,而非现在的时间。
-f 此参数负责解决BSD版本touch指令的兼容性问题。
-m 将–time=mtime 或–time=modify 只改动时间。
-r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
-t 使用指定的日期时间,而非现在的时间。

距离演示

touch 文件

在这里插入图片描述

5.mkdir指令(重要)

指令功能:在当前目录下创建一个目录。
语法:mkdir [选项] [目录名称]
常用选项

-p 即-parents 可以是一个路径的名称。此时若路径中的某些目录尚不存在,加上本选项后,系统将自动创建那些尚不存在的目录,即一次创建多个目录。

举例演示

创建一个新目录
mkdir 目录名称
递归创建多个目录
mkdir -p 目录名称/目录名称/...

在这里插入图片描述

空目录需要占据存储空间吗

空目录其实是需要占据存储空间的。这是因为文件其实是有两个部分组成,即文件内容和文件信息。虽然空目录的没有文件内容,但是空目录依然有文件信息。例如创建的时间、目录的路径等都是文件的信息数据,是数据需要占据存储空间的。

文件 = 文件内容 + 文件属性

文件的操作

在前面的语言编程学习里,大部分接触的文件操作其实是对文件内容的操作,如写一个打印hello world程序。本质是对文件内容的操作,当然,文件属性也是可以操作的。如控制文件的读写属性。

文件操作 = 对文件内容操作 or 对文件属性的操作

6.rmdir指令和rm指令(重要)

rmdir是一个与mkdir相对应的指令。rmdir适用于删除空目录的指令。rm是可以同时删除目录或者文件的指令。
rmdir指令语法:rmdir [选项] [目录名称]
rmdir适用对象:具有当前目录操作权限的所有使用者

rmdir常用选项

-p 当子目录被删除后,如果父目录也变成空目录的haul,就连带父目录一起删除

举例演示

在这里插入图片描述
rm指令语法:rm [选项] [目录名称]
rm适用对象:所有使用者

rm常用选项

-f 即使文件属性为只读(即写权限保护),也直接删除。
-i 删除前逐一询问确认。
-r 递归删除目录以及其下所有文件

举例演示

在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

原装RS罗德与施瓦茨FSW85、FSW50,FSW67信号+频谱分析仪

Rohde & Schwarz FSW85 2Hz至85GHz信号和频谱分析仪 特征 10 kHz 偏移&#xff08;1 GHz 载波&#xff09;时的低相位噪声为 –137 dBc (1 Hz) WCDMA ACLR 测量的 -88 dBc 动态范围&#xff08;带噪声消除&#xff09; 高达 5 GHz 的分析带宽 < 0.4 dB 总测量不确定度高…

投资回报率业内最高!FortiGate在CyberRatings防火墙独立测试中收获近乎完美表现

对于需参考客观产品数据以制定明智采购决策的企业 IT 采购方而言&#xff0c;公正的第三方测试数据不失为一项关键参考。幸运的是&#xff0c;国际第三方安全测评机构CyberRatings始终秉持公平公正的独立测试理念&#xff0c;致力于量化网络安全风险&#xff0c;为多种网络安全…

用gost实现远程端口映射

gost 是一个非常优秀的tunnel. 支持多种形式的端口映射。 本文只介绍远程端口映射方式的tunnel. 远程端口映射的意思就是&#xff0c;将本地端的某个服务的端口A&#xff08;tcp/udp&#xff09;映射到远程的某个端口P上&#xff0c; 用户通过访问远程的端口P来访问本地端的这…

Linux多路转接之poll

文章目录 一、poll的认识二、编写poll方案服务器三、poll方案多路转接的总结 一、poll的认识 多路转接技术是在不断更新进步的&#xff0c;一开始多路转接采用的是select方案&#xff0c;但是select方案存在的缺点比较多&#xff0c;所以在此基础上改进&#xff0c;产生了poll…

怎么缩小照片的kb,压缩照片kb的几种方法

缩小照片的KB大小是我们日常工作生活中遇到的常见问题。虽然听起来十分专业&#xff0c;但其实很简单。照片的KB是指照片文件的大小&#xff0c;通常以“KB”为单位表示。缩小照片的KB就是减小照片文件的大小&#xff0c;以便占用更少的磁盘空间或更快地上传和下载照片。在实际…

什么是BI ?BI 能给企业带来什么价值?

目前&#xff0c;社会数字化程度还在不断加深&#xff0c;数据量也伴随着一同高速增长&#xff0c;许多人预测未来将是数据处理时代&#xff0c;而作为数据类解决方案的商业智能BI也会持续扩张市场&#xff0c;朝着不同行业BI商业智能的方向发展。 利用BI工具系统&#xff0c;…

MySQL 的 varchar 存储原理:InnoDB 记录存储结构

1. InnoDB 是干嘛的&#xff1f; InnoDB 是一个将表中的数据存储到磁盘上的存储引擎。 2. InnoDB 是如何读写数据的&#xff1f; InnoDB 处理数据的过程是发生在内存中的&#xff0c;需要把磁盘中的数据加载到内存中&#xff0c;如果是处理写入或修改请求的话&#xff0c;还…

统计学01: 中心极限定律、正态分布、z-score

<~生~信~交~流~与~合~作~请~关~注~公~众~号生信探索> 中心极限定律 中心极限定律&#xff1a;当样本样足够大时&#xff08;n≥30&#xff09;&#xff0c;样本的mean等于总体的mean 例如&#xff0c;对学校的学生身高抽样&#xff0c;100组每组30人&#xff0c;每组的身…

JavaScript沙箱

1、什么是沙箱 在计算机安全中&#xff0c;沙箱&#xff08;Sandbox&#xff09;是一种用于隔离正在运行程序的安全机制&#xff0c;通常用于执行未经测试或者不受信任的程序或代码&#xff0c;它会为待执行的程序创建一个独立的执行环境&#xff0c;内部程序的执行不会影响到…

【JOSE约瑟 JZS-7E14/11静态可调延时中间继电器 自动控制电路 接通、分断电路】

JZS-7E14/11静态可调延时中间继电器品牌:JOSEF约瑟名称:静态可调延时中间继电器型号:JZS-7E14/11额定电压:6220VDC&#xff1b;6380VAC触点容量:10A/250V10A/220VDC功率消耗:≤6W 一 用途 JZS-7E系列中间继电器用于各种保护和自动控制装置中,以增加保护和控制回路的触点容量. …

Java面试知识点(全)-数据结构和算法

Java面试知识点(全) 导航&#xff1a; https://nanxiang.blog.csdn.net/article/details/130640392 注&#xff1a;随时更新 基础的数据结构 数组 数组的下标寻址十分迅速&#xff0c;但计算机的内存是有限的&#xff0c;故数组的长度也是有限的&#xff0c;实际应用当中的数据…

伙伴云CEO戴志康:低代码与GPT,是赛车手和领航员的角色

GPT来的突然&#xff0c;不仅打了那些对AI冷眼相待的人们一个措手不及&#xff0c;也顺势带动了全民”AIGC”讨论热潮&#xff0c;让大众开始期待它的到来&#xff0c;能为这个人间添上多少精彩.... 万众期待下&#xff0c;GPT也没谦虚&#xff0c;大笔一挥间便融入了到了协同办…

Java集合常见面试题

1、Java集合概述 Java集合&#xff0c;也叫作容器。由两大接口派生而来&#xff1a;Collection接口&#xff0c;用于存放单一元素&#xff1b;Map接口&#xff0c;主要用于存放键值对。对于Collection接口&#xff0c;下面又有三个主要的子接口&#xff1a;List、Set、Queue 2…

桌面远程工具推荐

目前市面上的远程工具多如牛毛&#xff0c;很多人不知道怎么选择&#xff0c;下面小编介绍两种桌面远程工具&#xff0c;它们都是跨平台的&#xff0c;均支持Windows&#xff0c;Mac OS&#xff0c;IOS和安卓&#xff0c;分别是RayLink&#xff0c;VNC&#xff0c;好用&#xf…

eKuiper 源码解读:从一条 SQL 到流处理任务的旅程

概述 LF Edge eKuiper 是 Golang 实现的轻量级物联网边缘分析、流式处理开源软件&#xff0c;可以运行在各类资源受限的边缘设备上。eKuiper 的主要目标是在边缘端提供一个流媒体软件框架。其规则引擎允许用户提供基于SQL 或基于图形&#xff08;类似于 Node-RED&#xff09;的…

权威硬核认证|数说故事携手IDEA共创学术论文获NLP国际顶会 ACL 2023收录

日前&#xff0c;数说故事携手IDEA共创的学术论文——《A Unified One-Step Solution for Aspect Sentiment Quad Prediction (一个统一的单步情感四元组识别方法) 》被国际学术顶会 ACL 2023 接收为 Findings长文。这是继上一年IDEA数说故事实验室论文获「国际AI顶会IJCAI-ECA…

加密解密软件VMProtect教程(六):主窗口之控制面板“项目”部分(1)

VMProtect 是保护应用程序代码免遭分析和破解的可靠工具&#xff0c;但只有在正确构建应用程序内保护机制并且没有可能破坏整个保护的典型错误的情况下才能最有效地使用。 接下来为大家介绍关于VMProtect主窗口中的控制面板&#xff0c;其中包括&#xff1a;“项目”部分、“功…

AD20 原理图设计流程

Altium Designer 20 的原理图设计大致可以分为9个步骤&#xff1a; &#xff08;1&#xff09;新建原理图。这是原理图设计的第一步。 &#xff08;2&#xff09;图纸设置。图纸设置就是要设置图纸的大小&#xff0c;方向等信息。图纸设置要根据电路图的内容和标准化来进行。…

教你几分钟玩转.ipynb文件

找代码的时候最不喜欢遇到.ipynb文件&#xff0c;因为要打开jupyter&#xff0c;作为懒癌患者&#xff0c;即使电脑安装了jupyter也很少去用。不知道有没有人和我一样&#xff0c;真的很不喜欢在终端开一个程序&#xff0c;不能关的那种。 今天又遇到.ipynb文件&#xff0c;这…

我是如何利用midjourney制作表情包的

起初是在看到大厂文章《【Midjourney教程】设计麻瓜也能10分钟上架一套表情包》以后&#xff0c;才想自己试试的。如果你是midjourney的老鸟了&#xff0c;那么参照着文章&#xff0c;应该也能很顺利的完成。下面我介绍下&#xff0c;我遇到的问题和解决方案 准备&#xff1a;…