linux小白入门篇之一

初识linux

矛盾说:我从来不梦想,我只是在努力认识现实;戏剧家洪深说:我的梦想是明年吃苦的能力比今年更强;鲁迅说:人生最大的痛苦是梦醒了无路可走;苏格拉底说:人类的幸福和欢乐在于奋斗,而最有价值的是为了理想而奋斗。

简述

Linux操作系统是UNIX操作系统的一种克隆系统,它诞生于1991 年的10 月5 日(这是第一次正式向外公布的时间)。以后借助于Internet网络,并通过全世界各地计算机爱好者的共同努力,已成为今天世界上使用最多的一种UNIX 类操作系统,并且使用人数还在迅猛增长。

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。它主要用于基于Intel x86系列CPU的计算机上。这个系统是由全世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。

Linux以它的高效性和灵活性著称,Linux模块化的设计结构,使得它既能在价格昂贵的工作站上运行,也能够在廉价的PC机上实现全部的Unix特性,具有多任务、多用户的能力。Linux是在GNU公共许可权限下免费获得的,是一个符合POSIX标准的操作系统。Linux操作系统软件包不仅包括完整的Linux操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。它还包括带有多个窗口管理器的X-Windows图形用户界面,如同我们使用Windows NT一样,允许我们使用窗口、图标和菜单对系统进行操作。

linux的诞生

Linux 操作系统的诞生、发展和成长过程始终依赖着五个重要支柱:UNIX 操作系统、MINIX 操作系统、GNU 计划、POSIX 标准和Internet 网络。

1981 年IBM公司推出微型计算机IBM PC。
林纳斯·托瓦兹
林纳斯·托瓦兹

1981-1991 年间DOS操作系统一直是微机上操作系统的主宰。此时计算机硬件价格虽逐年下降,但软件价格仍居高不下。当时Apple 的Mac OS 操作系统可以说是性能最好的,但是其天价没人能够轻易靠近。

1991 年,GNU 计划已经开发出了许多工具软件。最受期盼的Gnu C 编译器已经出现,但还没有开发出免费的GNU 操作系统。即使是MINIX 也开始有了版权,需要购买才能得到源代码。而GNU 的操作系统HURD 一直在开发之中,但并不能在几年内完成。对于林纳斯·托瓦兹来说,已经不能等待了。

1991 年4 月,林纳斯·托瓦兹开始酝酿并着手编制自己的操作系统。刚开始,他的目的很简单,只是为了学习Intel 386 体系结构保护模式运行方式下的编程技术。但后来Linux 的发展却完全改变了初衷。

1991 年初,林纳斯·托瓦兹开始在一台386sx 兼容微机上学习minix 操作系统。通过学习,他开始酝酿开发一个新的免费操作系统。根据Linux 在comp.os.minix 新闻组上发布的消息,可以知道他逐步从学习minix 系统到开发自己的Linux 的过程。

1991 年的4 月份开始,林纳斯·托瓦兹几乎花了全部时间研究386-minix系统(hack the kernel),并且尝试着移植GNU 的软件到该系统上(GNU gcc、bash、gdb 等)。

1991 年4 月13 日在comp.os.minix 上发布说自己已经成功地将bash 移植到了minix 上,而且已经爱不释手、不能离开这个shell 软件了。

1991 年7 月3 日,第一个与Linux 有关的消息是在在comp.os.minix 上发布的其中透露了他正在进行Linux 系统的开发,并且在Linux 最初的时候已经想到要实现与POSIX(UNIX 的国际标准)的兼容问题了。

1991 年的10 月5 日,林纳斯·托瓦兹在comp.os.minix 新闻组上发布消息,正式向外宣布Linux 内核系统的诞生。这段消息可以称为Linux 的诞生宣言,并且一直广为流传。因此10 月5 日对Linux 社区来说是一个特殊的日子,许多后来Linux 的新版本发布时都选择了这个日子。所以RedHat 公司选择这个日子发布它的新系统也不是偶然的。

linux就介绍到这里吧,接下来开始我们的linux入门学习吧!!!

linux学习

由于初次学习linux,所以我们目前将在虚拟机上进行,可劲造,造坏不要怕,一个命令重置就OK了。
本文主要讲是在虚拟机进行上linux的学习,所以先来打开虚拟机吧,等一等……再打开虚拟机之前我们要大体一下知道linux的系统结构,我们都听说过linux一切皆文件,所以我们先了解一下linux的系统结构也就是她的目录,及其各个目录的作用。

1、linux的系统结构

linux是一个倒树型结构,最大的目录 叫根目录‘/’
二级目录

/bin   二进制可执行文件 系统常规命令h
/boot  启动目录 ,存放系统自动启动文件,内核,初始化程序h
/dev   系统设备管理文件 
/etc   大多数系统配置文件存放路径 h
/home  普通用户家目录 区分普通用户h
/lib   函数库
/lib   64位函数库
/media  临时挂载点
/mnt    临时挂载点
/opt    第三方软件安装路径
/proc   系统硬件信息和系统进程信息
/root   超级用户家目录
/run    自动临时挂载点
/sbin 系统管理命令,通常只有root可以执行
/srv   系统数据目录
/var   系统数据目录
/sys   内核相关数据
/tmp 临时文件产生目录
/usr  用户相关信息数据

2、虚拟机的操作

虚拟机打开				rht-vmctl start desktop                
虚拟机显示				rht-vmctl view desktop
虚拟机关闭				rht-vmctl  poweroff desktop
虚拟机重置				rht-vmctl reset desktop

Red hat Enterprise Linux Server 7.0 (Maipo) ##系统版本
Kernel 3.10.0-123.el7.x86_64 on an x86_64 ##内核版本,系统位数

desktop login:root          ##登陆用户名称输入,此时root为超级用户     
Password:                   ##密码输入不显示

在这里插入图片描述
既然打开了虚拟机,难么我们快试试命令吧,终于揭开了linux神秘的面纱了,好激动啊!!!

3、命令提示符字段含义及其运行

命令提示符字段的含义

[root@foundation0 ~]$      ##root 当前用户,运行shell的用户
[root@foundation0 ~]$      ##@ 分隔符号
[root@foundation0 ~]$      ##foundation0 主机名短名称
[root@foundation0 ~]$      ##~ 工作目录
[root@foundation0 ~]$      ##$ 身份提示符       $表示如同用户      #表示超级用户

如何运行命令

|命令 | 参数 | 目标|
|ls | -l | test|

注意:
1 )参数指定命令某些功能,可加可不加
2)命令和参数和目标之间有空格
3)在执行命令时特殊情况除外
4)命令在命令提示符后输入,否则无效

命令的帮助

whatis [命令] ##查看命令的功能
[命令] --help ##查看命令的帮助
[]      ##选择加入的内容,可加可不加
...     ##加入的内容个数任意
<>      ##内容在命令执行过程当中必须要加

4、文件的管理

1) 文件建立
touch filename (file)
在这里插入图片描述

2)目录建立
mkdir directory (test)
一步建立
在这里插入图片描述
mkdir -p redhat/we/file
建立递归目录,上层目录不存在

在这里插入图片描述

3)删除文件

rm -f file

在这里插入图片描述

4)目录删除
rm -r text
在这里插入图片描述
5)文件与目录的复制
在这里,我给大家把/etc/passwd文件复制到/root下。
在这里插入图片描述

cp 源文件  目的地文件
cp -r 源目录  目的地目录
cp 源文件1 源文件2 目的地目录
cp -r 源文件1 源文件2 目的地目录

6)文件的移动
在/root下建立两个文件夹test1 test2并且在test2中建立file1,人后将file1移到test1中,看代码。
在这里插入图片描述
mv 源文件 目的地文件
mv 源目录/源文件 目的地目录

7 )文件查看
接下来就查看一下刚才复制过来的passwd文件吧,上代码。

在shell中查看passwd文件
在这里插入图片描述
less 分页浏览(:q##退出)
在这里插入图片描述
查看最前面的3行
在这里插入图片描述
查看最后3行
在这里插入图片描述

cat						##输出文件全部内容
less					##分页浏览
head			file	##查看文件前10行
head	-n 	3	file	##查看文件前3行
tail			filee	##查看文件后10行
tail	-n	3	file	##查看文件的后3 行
tail	-f		file	##监控文件内容的变化

8)文件大小统计

wc
wc		-l		##行数
wc		-w		##单词数
wc		-c		#字节数

在这里插入图片描述

5、vim 的简单操作

在linux下,我们使用最多文本编辑器的便是vim,因为vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。
vim
在vim的命令模式下可以配置vim的工作方式
(vim passwd)按i进入插入模式
在这里插入图片描述

:set nu        	    ##行号添加
:set nonu     	  	##取消行号
:set mouse=a        ##添加鼠标选择
:set cursorline     ##行线显示

在这里插入图片描述

在这里插入图片描述
关键字搜索

n			#向下匹配
N			#向上匹配
/keyword	##高度显示关键字

vim file ##进入file文件,进行编辑

按[i]		  ##进入insert模式,开始编辑文件
按[Esc]       ##退出inser模式
:wq          ##保存退出
:q           ##退出不保存
:q!          ##强制退出
ZZ			  ##保存退出

复制、粘贴、剪切
y ##复制命令
d ##删除命令
c ##剪切命令
这三种命令的用法一样,只需将y换成想要执行的命令就行了,这里只讲 (复制) y。
在这里插入图片描述

yl			##复制一个字母
y3l			##复制3个字母
yw			##复制一个单词
y3w			##复制3个单词
yy			##复制一行
y3y			##复制3行

注意:在剪切之后会进入插入模式,要粘贴需要按[Esc]退出插入模式,然后按 p 粘贴

p			##粘贴
u		 	##撤销
ctrl + r 	##恢复撤销

vim 可视化模式

v			##字符可视化
V			##行可视化
ctrl + v	##块可视化

在这里插入图片描述
字符的替换
将passwd文件中的sbin字符换成love,并且将love高度显示
在这里插入图片描述

:%s/要替换的字符/替换成的字符/g
:1.5s/要替换的字符/替换的字符/g    ##替换1到5行

vim的分屏
进行上下左右分屏
在这里插入图片描述

crtl + w	s		##上下分屏
crtl + w	v		##左右分屏
crtl + w	c		##关闭光标移动所在的屏幕
crtl + w	上下左右	##光标西东到指定的屏幕
: sp file 			##同时编辑当前文件和file

vim下光标的操作

gg			##光标移动到文件的第一行
G			##光标移动到文件的最后
:数字		##光标移动到指定行
在插入模式下
i       ##光标所在位置插入
I       ##光标所在行行首
a       ##光标所在字符的下一个位置
A       ##光标所在行行尾
o       ##光标所在行下一行
O       ##光标所在行上一行
s       ##删除光标所在字符插入
S       ##删除光标所在行插入

6、目录与路径

文件的地址
相对路径:相对于当前系统所在目录的一个名称间歇,此名称省略了系统当前所在名称此名称不以/开头
绝对路径:是文件在系统的真实位置,此路径以/开头,此路径在寻找是不会考虑现在所在的路径
自动补齐
可以实现命令和路径自动补齐

pwd         ##查看当前所在路径
cd  [目录]  ##打开到指定目录
cd    ~     ##打开到当前用户所在的家目录
cd    ..    ##打开到上一层目录
cd    -     ##打开的上一个目录(两个目录之间)

查看目录

ls  		dir			##列出当前所知目录下的文件
ls 	 -l 	file 		##文件属性
ls 	 -d	dir				##显示目录本身
ls 	 -a	dir		    	##显示所有文件(包括隐藏文件)
ls	 -S	dir				##查看并且按照文件大小排序

在这里插入图片描述

7、系统中history的用法

history			##查看历史
history	-c		##清空当前环境中的历史
!数字			##调用此行历史
!test			##执行以test关键字开头的命令
ctrl + r +关键字 ##调用历史中最近一条含有关键字的历史

在这里插入图片描述

8、系统的通用配置符

*				##匹配0到任意字符
?				##匹配单个字符
[[:alpha:]]		##单个字母
[[:lower:]]		##单个小写字母
[[:upper:]]		##单个大写字母
[[:digit:]]		##单个数字
[[:punct:]]		##单个符号
[[:alnum:]]		##单个字母或数字

[1-9]			##1位,是1-9的任意数字
[!3-5]			##1位,不是3-5的数字
[^3-5]			##1位,不是3-5的数字
{1..3}			##3位,1 2 3
{1,3,5}			##3位,1,4,7这三个数字

在这里插入图片描述
在这里插入图片描述
第一篇就到这吧!!!
待续……


猜你喜欢

转载自blog.csdn.net/We_chuan/article/details/82855699