目录
小编是双非本科大一菜鸟不赘述,欢迎大佬指点江山(QQ:1319365055)
此前博客点我!点我!请搜索博主 【知晓天空之蓝】
🎉🎉非科班转码社区诚邀您入驻🎉🎉
小伙伴们,打码路上一路向北,背后烟火,彼岸之前皆是疾苦
一个人的单打独斗不如一群人的砥砺前行
这是我和梦想合伙人组建的社区,诚邀各位有志之士的加入!!
社区用户好文均加精(“标兵”文章字数2000+加精,“达人”文章字数1500+加精)
直达: 社区链接点我
🎉🎉🎉倾力打造转码社区微信公众号🎉🎉🎉


这篇文章算是入坑 Linux 的第一篇文章,本来想写一个开头篇,但感觉这么写可能会写成一篇历史和人物传记,于是打算整合到这里一起写了。
既然学习Linux,那就要知道什么是Linux:
Linux 是一种自由和开放源码的类 UNIX 操作系统,Linux 英文解释为 Linux is not Unix。Linux 是在 1991 由林纳斯·托瓦兹在赫尔辛基大学上学时创立的,主要受到 Minix 和 Unix 思想的启发。

也就是Linux之父 Linus 的灵感源自于C语言之父和 Unix 之父,他之所以会创造 Linux 正是因为他厌恶 Windows 和乔布斯的 IOS 系统,他觉得对操作系统垄断收费是不合理的,他的愤怒瞬间招来了志同道合的顶级黑客,民间高手,论坛精英等贤士一起开发出了面向大众的免费高性能操作系统—— Linux,最伟大的生产方式==“开源”==也随之诞生,这也是为什么林纳斯是乔布斯的一生之敌,他让乔布斯每年活生生亏损几十亿。
Linux 应用极其广泛,对于 Linux 有人修改操作系统写源代码,有人直接拿来用进行改造与提升做应用级的开发,总之都会选择一款 Linux 内核。现在如雷贯耳的鸿蒙系统,红帽(centos),Ubuntu,kali 都是 Linux 的杰作。而 Linux 应用场景极为丰富,服务器后台,嵌入式,树莓派,物联网,智能家电等等都是基于 Linux 开发的。
对于Linux不得不谈的是“开源”这个概念,我愿称之为最超前最伟大也是最理想的生产方式,以无尽的知识为资本流入,每个人不求回报不遗余力的投入,最后以经济和科技的纯利润流出,我就问还有谁。
代码开源相比代码闭源反而还更安全,更高效,更稳定,因为这个代码会面向全世界的人才,有问题会立马解决并得到优化方案,而闭源面对的是有限的技术力和素质参差不齐的内部人员,这也是为什么很多商业公司闭源代码反而会有代码维护的困扰。
OS 即操作系统,操作系统是在计算机(硬件)之后诞生的,单纯的硬件计算机最开始并不是所有人都能用的而是给科学家用的,虽然就是就是已经具备超过人脑的计算能力但是他的操作十分麻烦,难度高效率低,所以 OS 存在的首要理由就是提高计算机效率。
软件是可以操作硬件的,比如使用 cout 在屏幕输出字符串,那么这个过程是怎么实现的呢?其实紫计算机最底层的就是硬件,键盘显示器网卡啥的,硬件层之上是驱动软件层,它是帮助上层实现对硬件基本访问。在鼠标插入到USB接口时的短时间内,我操作鼠标并还没有反应而此时物理层面上他已经连上电脑了,此时就是在等待驱动的行为。

一般而言一种硬件厂商都会提供相应的驱动软件,获取驱动的方式一般而言就是OS提供获取和安装。再上一层就是传说中狭义上的 OS,他包含四个部分进程管理,文件管理,内存管理,驱动管理,再上面的是用户层,包含了图形化,各种库和应用程序

所以 OS 核心功能就是对下管理好底层的软硬件资源,对上要给用户提供一个良好稳定高效的运行环境。如果 OS 是银行的话,Linux 其实就是工商银行,农业银行,建设银行……中的一种。
对于非专业人员来讲指令操作没有必要,对于专业人员也是可有可无,但是要学习 OS 原理,指令编程必须掌握,因为指令操作更加亲近操作系统,要想真正去学习 OS 必须学习指令操作
你说图形化界面不香吗?对,香是香,但是图形化界面终究来自于指令,指令来自于键盘。最早人们就开始思考如何将数据交给计算机,自然就想到了打字机,刚开始所有 OS 都支持指令操作,后面乔布斯在苹果引入了图形化界面才开始逐渐起势。
ls,全拼 list files,命令用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录),参数包括:
-a 显示所有文件及目录 (隐藏文件也会列出)
-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
-r 将文件以相反次序显示(原定依英文字母次序)
-t 将文件依建立时间之先后次序列出
-A 同 -a ,但不列出 “.” (目前目录) 及 “…” (父目录)
-F 在列出的文件名称后加一符号;例如可执行档则加 “*”, 目录则加 “/”
-R 若目录下有文件,则以下之文件亦皆依序列出
这里我用 ls 试一试:

发现是有文件存在的,文件 test.cpp 存在于 newfolder 的目录下,我们用 pwd 指令可以查看到该文件的访问路径。既然如此,那我去这个访问目录里面创建一个新的文件 .txt,他的大小为 0 kb,那么此时磁盘中是否占用空间呢?答案是一定的,因为文件有属性数据(文件名,创建时间啥的),属性数据也是数据,所以总结一句就是文件 = 文件内容+文件属性
-a 指令查看 Linux 系统中的隐藏文件,即 . 开头的文件,Windows 中也存在这种隐藏文件:

如上这些都是隐藏文件,但多实验几组不难发现,基本上每一组都是:
. … 其他隐藏文件名
开头两个点是啥玩意儿呢?它是每个目录下都会存在的两个隐藏文件 . 和 … ,他们分别被称为当前路径和上级路径。这也就告诉我们要想回到上级目录就需要借助它,Linux 中这样操作:

cd … 即回到上级目录,cd 可以暂且理解为切换目录指令,cd 后面跟任意路径可以跳转。
从这里也可以看出,Linux 的路径分隔符就是反斜杠 / 。最后我们回到 / 时就没办法回退了,最后剩下的这个 / 就不是路径分割符了,它被称为根目录。从根目录开始,可逐个展开,每个节点对应一个文件也可以是一个目录,所以 Linux 目录结构是我们的老朋友树状结构——多叉树。
当我们需要寻找某个目标文件时,我们有两种方法,通过绝对路径和相对路径,绝对路径是指从根目录开始层层下寻找到该文件的路径,而相对路径是指相对我当前所处位置寻找过去的路径。如果是日常使用,我推荐使用相对路径,因为这很简单,但是如果需要添加配置文件之类的,我推荐使用绝对路径,因为不会出错正确性高。

cd -他是一个快捷指令,他的意思是跳转到上一次我所处的路径,还有 cd / 指令,估计一眼就能看出来他什么用吧,每次就是跳转到根目录。

在Linux操作系统中,有很多的文本编辑器,最为重要的就是vi文本编辑器,下面来介绍一个简单的nano文本编辑器。nano的使用简单,我们可以直接加上文件名就能够打开一个旧文件或新文件,我们可以打开一个旧文件编辑它,也可以打开一个新文件,即不管这个文件存不存在都是可以打开的!
mkdir 即 make directory,命令用于创建目录
mkdir dirname
当前格式就可以在当前目录下创建一个名为 dirname 的子目录。
如果我想创建一个套娃路径,类似 dir1/dir2/dir3/dir4…… 这么一长串的目录该怎么办呢?当然不会一个一个去建,我们采用:
mkdir -p dir1/dir2/dir3/dir4
现在普通文件和目录我们都可以创建了,但是要想进行删除该怎么办呢?这就要用到 rm 指令了。
对于目录的删除我们使用 rmdir,特点是只能删除空目录,所以并不常用,我们删除文件 rm + 文件名可以直接将文件删掉,我们要是想删目录不能直接用 rm + 目录名,因为目录可能是一个包含其他目录的树形结构,我们需要递归删除,采用格式:
rm -r dirname
我们还有 force 强制删除指令,对象是文件和目录 :
rm -rf file
今天就到这里吧,润了家人们。
?博客主页:https://xiaoy.blog.csdn.net?本文由呆呆敲代码的小Y原创,首发于CSDN??学习专栏推荐:Unity系统学习专栏?游戏制作专栏推荐:游戏制作?Unity实战100例专栏推荐:Unity实战100例教程?欢迎点赞?收藏⭐留言?如有错误敬请指正!?未来很长,值得我们全力奔赴更美好的生活✨------------------❤️分割线❤️-------------------------
项目介绍随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱小学生兴趣延时班预约小程序的设计与开发被用户普遍使用,为方便用户能够可以随时进行小学生兴趣延时班预约小程序的设计与开发的数据信息管理,特开发了小程序的设计与开发的管理系统。小学生兴趣延时班预约小程序的设计与开发的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与小学生兴趣延时班预约小程序的设计与开发的实际需求相结合,讨论了小学生兴趣延时班预约小程序的设计与开发的使用。开发环境开发说明:前端使用微信微信小程序开发工具:后端使用ssm:VU
Rails相对较新。我正在尝试调用一个API,它应该向我返回一个唯一的URL。我的应用程序中捆绑了HTTParty。我已经创建了一个UniqueNumberController,并且我已经阅读了几个HTTParty指南,直到我想要什么,但也许我只是有点迷路,真的不知道该怎么做。基本上,我需要做的就是调用API,获取它返回的URL,然后将该URL插入到用户的数据库中。谁能给我指出正确的方向或与我分享一些代码? 最佳答案 假设API为JSON格式并返回如下数据:{"url":"http://example.com/unique-url"
我正在尝试复制此GETcurl请求:curl-D--XGET-H"Authorization:BasicdGVzdEB0YXByZXNlYXJjaC5jb206NGMzMTg2Mjg4YWUyM2ZkOTY2MWNiNWRmY2NlMTkzMGU="-H"Content-Type:application/json"http://staging.example.com/api/v1/campaigns在Ruby中,通过电子邮件+apikey生成身份验证:auth="Basic"+Base64::encode64("test@example.com:4c3186288ae23fd9661c
文章目录一、项目场景二、基本模块原理与调试方法分析——信源部分:三、信号处理部分和显示部分:四、基本的通信链路搭建:四、特殊模块:interpretedMATLABfunction:五、总结和坑点提醒一、项目场景 最近一个任务是使用simulink搭建一个MIMO串扰消除的链路,并用实际收到的数据进行测试,在搭建的过程中也遇到了不少的问题(当然这比vivado里面的debug好不知道多少倍)。准备趁着这个机会,先以一个很基本的通信链路对simulink基础和相关的debug方法进行总结。 在本篇中,主要记录simulink的基本原理和基本的SISO通信传输链路(QPSK方式),计划在下篇记
Linux操作系统——网络配置与SSH远程安装完VMware与系统后,需要进行网络配置。第一个目标为进行SSH连接,可以从本机到VMware进行文件传送,首先需要进行网络配置。1.下载远程软件首先需要先下载安装一款远程软件:FinalShell或者xhell7FinalShellxhell7FinalShell下载:Windows下载http://www.hostbuf.com/downloads/finalshell_install.exemacOS下载http://www.hostbuf.com/downloads/finalshell_install.pkg2.配置CentOS网络安装好
文章目录一基础定义二创建逻辑卷2-1准备物理设备2-2创建物理卷2-3创建卷组2-4创建逻辑卷2-5创建文件系统并挂载文件三扩展卷组和缩减卷组3-1准备物理设备3-2创建物理卷3-3扩展卷组3-4查看卷组的详细信息以验证3-5缩减卷组四扩展逻辑卷4-1检查卷组是否有可用的空间4-2扩展逻辑卷4-3扩展文件系统五删除逻辑卷5-1备份数据5-2卸载文件系统5-3删除逻辑卷5-4删除卷组5-5删除物理卷六LVM逻辑卷缩容6-1缩容注意事项6-2标准缩容步骤一基础定义LVM,LogicalVolumeManger,逻辑卷管理,Linux磁盘分区管理的一种机制,建立在硬盘和分区上的一个逻辑层,提高磁盘分
如何在Ruby中获取linux系统(这必须适用于Fedora、Ubuntu等)的软件/硬件信息? 最佳答案 Chef背后的优秀人才,拥有一颗名为Ohai的优秀gemhttps://github.com/opscode/ohai以散列形式返回系统信息,例如操作系统、内核、规范、fqdn、磁盘、空间、内存、用户、接口(interface)、sshkey等。它非常完整,非常好。它还会安装命令行二进制文件(也称为ohai)。 关于ruby-如何在Ruby中获取linux系统信息,我们在Stack
我在LinuxMint17.2上。我最近使用apt-getpurgeruby删除了ruby。然后我安装了rbenv然后rbenvinstall2.3.0所以现在,~/.rbenv/versions/2.3.0/bin/ruby存在。但是现在,我无法执行geminstallrubocop。我明白了:$geminstallrubocoprbenv:gem:commandnotfoundThe`gem'commandexistsintheseRubyversions:2.3.0但是我可以~/.rbenv/versions/2.3.0/bin/geminstallrubocop。但是,
我是Ruby和RoR的新手。我有一个带有Ubuntu镜像的干净Linode实例,我想从源代码编译Ruby而不是使用apt-get。我已经在谷歌上搜索了执行此操作的说明,但经过一些尝试后,当我尝试运行一些教程示例时,我不断收到有关缺少zlib和其他一些包的错误。任何人都可以给我详细的说明(或链接),教我如何在从源代码编译Ruby之前安装必要的必备包吗?我的目的是编译Ruby的最新稳定版本,然后安装Rubygems和Rails。提前感谢您的帮助!!! 最佳答案 Thisblogpost涵盖从源代码编译ruby所需的包和安装过程;它引