linux重新学习-纪录篇

前言:

正式学习linux的时候,除了那些命令之外,更多的是对于这个系统的重新认知。

linux的身世?

在上世纪90年代,那时候计算机非常的珍贵,配置也很一般般,系统也贵,所以没啥人用,在当时就已经有系统了叫UNIX系统,这个是linux的前身,由于当时这个系统非常的吃配置,当然了对于当时来说是这样的,据说可以使用UNIX操作系统的机器在当时可以卖到5W美刀,然后到了后面有一个开源大神(这也是开源的最初形成)认为计算机本来就应该是亲民的,我们要实现其普遍性,因此对于UNIX进行了二次开发,形成了最初的Linux版本0.1x,据说当时代码只有仅仅1w行(c语言),编写Linux内核。以Minix操作系统作为参考,但在Minix的基础上进行了丰富的修改和扩展,以创建一个更符合个人计算机需求的内核,通过互联网将Linux发布到公众,并邀请其他开发者参与到项目中。这一开放的发展模式吸引了大量的开发者,他们为Linux做出贡献,改进了内核的功能和性能,Linux最初是作为一个内核开发的项目,但随着时间的推移,它逐渐发展成为一个完整的操作系统。Linux内核与GNU项目中的工具和应用程序结合在一起,形成了一个完整的Linux操作系统。这种结合被称为GNU/Linux,Linux的开源性质使得任何人都可以查看、修改和分发源代码,这也促进了Linux在全球范围内的发展和广泛应用。如今,Linux已成为主流操作系统,广泛应用于服务器、移动设备、嵌入式系统等各个领域,Linux的身世可以概括为一个由Linus Torvalds发起的开源项目,经过全球开发者的不断贡献和改进,最终发展成为一个强大、稳定的操作系统内核,为现代计算机提供了一个开放、灵活和可定制的平台。

linux为什么力压window成为程序员最喜欢的开发平台?

1.开源性

Linux是一个开源操作系统,这意味着人们可以自由查看、修改和分发其源代码。开源性使得程序员可以深入了解内部运行机制,并对系统进行自定义和优化。可以根据自己的需求修改和扩展Linux内核和其他软件,而不受厂商的限制。

2.稳定性.可靠性

Linux在服务器环境中表现出色,以其高度稳定和可靠的特性著称,减少系统崩溃和数据损失的风险。

3.社区支持

Linux拥有庞大而活跃的开源社区,这是它的一个重要优势。开发者可以通过邮件列表、论坛、社交媒体等途径与其他开发者交流和分享经验。可以获得社区的支持和反馈,解决问题和改善开发技巧。开源社区的合作精神也促进了不同开发者之间的合作和共同进步

命令篇:

对于linux而言,我们都知道linux是一个以树为模型而构建的一个文件系统,通过树的父子关系来进行文件的寻址,文件系统是以根目录(/)为起点,通过目录和子目录的层级关系构建而成的。每个目录可以包含文件和其他目录。那么文件对于linux系统来说是非常重要的。

所以对于文件的crud和属性操作是我最先学习的

文本查看命令:

1.cat:一次性加载整个文本文件,也是我之前使用最多的一个查看文本行命令,这个命令有个缺点,就是一次性加载有时候不符合我们查看的要求,所以小文本可以用用,但是当文本内容多了之后就会显得很冗余,当然了与管道符号|和grep和起来用还是可以的,进行筛选。

2.more:缓慢加载,不是一次性加载所有的文本内容,一页一页的加载,可以通过空格键进行控制,但是不能向上翻页看已经看过的内容,对于大文本来说比较常用。

3.less:缓慢加载,和more的大体加载方式是一样的,但是它可以进行向上阅读,向上搜索

4.tail:这个命令我是一般用来查看日志log文件的,最常用的方式tail -f -n 100 xxx.log,用来实时观测这个文件最后100行的内容,用来进行linux日志排错,或者用户行为观测的一些操作,还有一点说明,因为这个tail是根据文件的inode进行观测的,而当文件被vi/vim进行修改的时候,tail是检测不到的,这是因为vi/vim修改文件时会对文件的inode进行修改,所以tail无法观测。

5.head:也是一个观测命令,只不过是动态观测前面n行,和tail恰恰相反,但是一般日志加载都是往后面加,所以这个命令一般用的很少,反正我几乎没用过一次......

文件位置查找命令:

1.find:全盘查找,需要去磁盘加载所有的文件目录才可以进行查找,所以速度很慢,几乎不用

find / -name ***.***          #查找/路径下所有的***.***的位置

2.which:根据系统的PATH路径进行查找,返回系统命令在哪个位置一般在/usr/下,也不建议用

which ***

3.whereis:只能用于程序名的搜索,而且只搜索二进制文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。如果省略参数,则返回所有信息,从来没用过......

whereis ***

4.locate:这个命令是最常用的命令,而且运行速度也快,因为这个命令的查找是根据数据库(/var/lib/locatedb)索引进行查找的,这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。

locate ***

查看历史命令:

history:

这个命令很厉害,可以查看你历史所有使用过的命令,前提是你不进行历史命令清除,直接输入就可以看到,也可以加入一些参数进行部分命令查看,例如查看带有cd的执行命令,或者查看最后100行执行的命令,根据这个我们可以使用!+id号就可以直接使用我们之前用过的命令,!之后跟的负数表示倒数取命令,目前我用到的就这么多

用户权限命令:

1.su:切换用户命令,从权限大-权限小不需要密码,反之则需要密码,切换之后的PATH环境是不会发生变化的,可以利用who am i/whoami来进行验证

2.sudo:暂时获取root权限的一个命令,类似于这样sudo cat xxx.log,当普通用户没有权限进行观测时,可以用sudo进行权限提升,但这也仅仅是当前命令行的提升,使用过后就没有了。

上面两个命令我也几乎没有过[笑哭],因为我一直都是用root登录操作的......

3.whoami:显示自身的用户名称,本指令相当于执行"id -un"指令。

文件的CRUD命令:

1.mkdir:创建文件命令,加-r可以递归创建,

你可能感兴趣的:(linux,linux,运维,服务器)