第一章节 Linux介绍、搭建开发环境以及常用Linux入门必备命令

目录

一、Linux的介绍

1、为什么要选择Linux?

2、学完Linux服务器开发能做什么?

二、Linux服务器开发学习方法

三、搭建Linux开发环境

1、开发平台的选择

2、Windows平台开发环境的搭建

3、安装VMware虚拟机

4、安装Linux操作系统

5、访问我们的Linux系统

四、快速入门Linux必备命令

1、Shell简介

2、寻求帮助——man命令

3、用户间切换SU

4、特殊命令sudo

5、显示当前目录 pwd 和改变目录 cd

6、ls 命令

7、列出目录内容:dir 和 vdir

8、建立目录 mkdir

9、移动、复制和删除

10、文件链接 ln

11、改变文件所有权 chown 和 chgrp

12、改变文件权限chmod

13、阅读文件的头部和尾部:head 和 tail

14、查看文本文件:cat 、more 和 less

15、编辑器:vim

16、查找命令——find

17、更快速的定位文件——locate命令

18、查找文件内容——grep命令


一、Linux的介绍

1、为什么要选择Linux?

无论你信与不信,Linux 已经成为这个世界上增长最迅速的操作系统!

在服务器领域,IBM、HP、Novell、Oracle 等厂商对Linux 系统提供了全方位的支持。2004年,IBM宣布其全线

服务器均支持Linux,思科公司在网络防火墙和路由器中也使用了定制的Linux,阿里云也开发了一套基于Linux的智能操作系统“YunOS”,可用于智能手机、平板电脑和网络电视。

2010年排名前500名的超级计算机中,92.4%(462台)都采用了Linux 操作系统。从2001年以来,基于Linux的服务器操作系统逐步发展壮大。国内几个主要的Linux厂商和科研机构,国防科技大学、中标软件、中科红旗

等先后推出了Linux服务器操作系统产品,并且已经在政府、企业等领域得到了广泛的应用。

市场价值

薪资待遇从月薪几千到年薪百万,你想要的薪资待遇都有!

岗位需求从初级开发到技术总监、CTO都需要具备Linux 开发技能!

市场应用

小到小孩用的玩具、小米的智能音箱手机、电脑、Pad 、智能手表、智能眼镜,以及电视等都是使用的Linux 系统。

大到火箭、航母(航天军工)等装备,淘宝、京东、网易、百度等BAT公司使用的大数据、云服务器集群,其内部使用的都是Linux 操作系统。

Linux因其稳定、开源、免费、安全、高效的特点,发展迅猛,在服务器市场占有率超过80%。

随着云计算的发展,Linux在未来服务器领域仍是大势所趋,大有可为!

2、学完Linux服务器开发能做什么?

(有网络的世界就离不开我)

棋牌、网络游戏服务器开发

微信小程序服务器开发

视频直播服务器开发

购物网站服务器开发

物联网服务器开发

区块链服务器开发

其它应用服务器开发

二、Linux服务器开发学习方法

多动手实践,理论结合实际。对于每个命令都要亲自操作实践,对于命令的每个参数也要亲自实践,只有这样才能理解其含义。

一定要习惯命令行方式工作。Linux下90%的操作都是通过命令行完成的,因此命令是必须要熟练掌握的。

学会使用Linux的联机帮助。Linux常用命令有上百个,如要识记每个命令,每个人都办不到。但是通过查询帮助文档,
执行man XX,即可列出XX命令的所有参数和用法。熟练、灵活运用联机帮助,在Linux下工作会有事半功倍的效果。

学会利用网络资源。可以在网络上的Linux技术社区、网站、论坛上,发现很多Linux爱好者发表的个人学习经验,

这些免费的技术经验和资料是学习Linux的瑰宝。

国内外网站

说明

freecode.com

最齐全的Linux/UNIX软件库

www.justlinux.com

信息齐全的Linux学习网站

www.kernel.org

Linux 内核的官方网站

www.linux.com

提供全方位的Linux 信息

www.linuxhq.com

提供内核信息和不定的汇总

www.chinaunix.net

国内最大的Linux/UNIX技术社区网站

www.linuxeden.com

Linux 伊甸园,最大的中文开源咨询门户网站

www.linuxfans.org

中国Linux 公社

www.linuxsir.org

提供Linux各种资源。包括资讯、软件和手册

三、搭建Linux开发环境

1、开发平台的选择

 如果已经了解Linux操作系统的基本使用,建议使用Linux平台

 如果不了解Linux操作系统,就直接使用Windows平台,以后再学习Linux操作系统。

 零基础的初学者,建议使用Windows平台。

2、Windows平台开发环境的搭建

这里主要使用ubuntu的Linux。通过以下链接下载

链接:https://pan.baidu.com/s/1celWkB64ObkXf3qpJeAVIQ?pwd=vuu8 

3、安装VMware虚拟机

通过以上链接下载,因为安装简单,自行百度。

4、安装Linux操作系统

前提: 自己的Windows 系统一定要联网(安装参考我主页的Ubuntu安装博客)

Linux操作系统,可选择:

 CentOS(建议:Centos 7.0以上)

补充:国内大部分企业的服务器是使用CentOS或(RedHat)

CentOS是Redhat的社区版,用法相同。

Ubuntu系统

注意:虚拟机启动ubuntu的安装以后,内部下一步按Enter 键来进行选择

5、访问我们的Linux系统

安装参考我主页的Putty安装博客或者MobaXterm安装博客

通过Vmware 界面操作

通过远程终端操作

   * Putty(上述链接下载)

   * MobaXterm

四、快速入门Linux必备命令

1、Shell简介

Shell 是运维和系统管理员操作Linux 系统的首选,简单说,它是一个命令解释器.

命令行相关: 

              行首“$” 或 “#” - 命令行提示符

              行中  ##   -  视为注释开始

              注意: 命令行是区分大小写的!

使用命令行补全(Tab) 和通配符可以提高输入效率

通配符共有3个: “*”,“?”,“[]”

*  - 用于匹配文件名中任意长度的字符串;

?  - 只匹配一个字符;

[] - 用于匹配所有出现在方括号内的字符。可以使用短线“-”来指定字符集范围。如:ls text[1-3]  或 ls test[a-z]

Linux 下环境下有几种不同Shell ,常用的有 BASH 、TCSH Shell和 Z-Shell 等.BASH 是默认安装和使用的Shell。

2、寻求帮助——man命令

作用:  Linux 为所有命令和系统调用编写了帮助手册。使用man 命令可以方便地获取某个命令的帮助信息。

用法:  man [手册编号] 命令名

man 命令在显示手册页时实际调用less 完成显示,J K可以上下翻动,空格用于向下翻页。Q键退出。

手册总共分为9 节,各部分内容如下:

目   录

内  容

/usr/share/man/man1

普通命令和应用程序

/usr/share/man/man2

系统调用

/usr/share/man/man3

库调用,主要是libc()函数的使用文档

/usr/share/man/man4

设备驱动和网络协议

/usr/share/man/man5

文件的详细格式信息

/usr/share/man/man6

游戏

/usr/share/man/man7

文档使用说明

/usr/share/man/man8

系统管理命令

/usr/share/man/man9

内核源代码或模块的技术指标

3、用户间切换SU

作用:  切换到其他用户

用法:  su [用户名] 

$ su   hacker      #切换到 hacker 这个用户                                      
$ su               #切换到 特权用户 root                                         

注意: Ubuntu 默认情况下,系统没有合法的root权限,不能直接使用su 命令提升到 root 权限,而必须要用 sudo 来获得 root 权限

4、特殊命令sudo

作用:  提升当前执行命令的权限,以root 身份执行它.

用法:  sudo  命令行

$ sudo  su              #切换到root 用户                                         
$ sudo   rm  root.txt    #切换到 特权用户 root   

5、显示当前目录 pwd 和改变目录 cd

pwd 命令

作用:  显示当前目录,即工作目录

用法:  pwd

cd命令

作用:  改变目录位置

用法:  cd  . . .[OPTION] . . .[FILE]. . .

cd  目录路径 - 进入指定的目录中去
cd  ..        - 返回父目录
cd  /          - 进入根目录
cd  或 cd ~    - 进入用户主目录
cd  ./*        -  进入当前目录下*表示的子目录

6、ls 命令

用法: ls  . . .[OPTION] . . .[FILE]. . .

常用参数:

  1. 不带任何参数   列出当前目录下的所有文件和子目录
  2. -F            分类显示,方便阅读
  3. -a            显示隐含文件
  4. -l             查看文件的各种属性

7、列出目录内容:dir 和 vdir

用法: 

        dir    . . .[OPTION] . . .[FILE]. . .

        vidr   . . .[OPTION] . . .[FILE]. . .

dir 和 ls 差不多,就比ls 功能少

vdir 相当于 ls -l 命令

8、建立目录 mkdir

用法: 

mkdir    . . .[OPTION] . . .[FILE]. . .

mkdir 一次可以建立一个或 几个目录

常用参数:

     不带任何参数    创建相应目录,如果目录的父级目录路径不存在,则创建失败;

     -p 创建相应目录,如果目录的父级目录路径不存在,则一起创建;

9、移动、复制和删除

移动命令 mv

用法: 

mv    . . .[OPTION]   源文件  目标文件

常用参数:

     不带任何参数    将源文件移动到目标文件,注意:如果目标文件存在则替换;

     -i     将源文件移动到目标文件,如果目标文件存在则提示是否替换;

     -b    将源文件移动到目标文件,如果目标文件存在则不进行覆盖,而是在目标文件后加~

复制命令 cp

用法: 

cp    . . .[OPTION]   源文件  目标文件    

常用参数:

     不带任何参数    将源文件复制到目标文件,注意:如果目标文件存在则替换;

     -i       将源文件复制到目标文件,如果目标文件存在则提示是否替换;

     -b      将源文件复制到目标文件,如果目标文件存在则不进行覆盖,而是在目标文件后加~

     -r       将子目录及其中的文件一起复制到另一个子目录下

删除命令 rm

删除命令可以一次永久性删除一个或几个文件(包含目录)

用法: 

rm    . . .[OPTION]. . . [FILE]. . .   

常用参数:

     不带任何参数    删除文件或相应目录,不给予任何提示;

     -i        删除文件或相应目录,删除时进行提醒;

     -f        强制性删除文件或相应目录;

     -r        将子目录及其中的文件一并删除。(慎用!特别时在root 权限下)

10、文件链接 ln

ln  建立文件链接

用法: 

ln    . . .[OPTION]   源文件  目标文件

常用参数:

     不带任何参数    创建硬链接,ls -i 查看可以看到两个文件的inode 值一致;

     -s     创建软链接,即别名,如果源文件删除,则软链接(别名)也无法访问。

11、改变文件所有权 chown 和 chgrp

chown 命令用于改变文件的所有权。

用法: 

chown    . . .[OPTION] [OWNER][:[GROUP]]  FILE . . .

常用参数:

     不带任何参数    改变单个或多个文件的属主和属组;

     -r   改变一个目录及其下所有文件(和子目录)的所有权设置。

chgrd  用于单独设置文件的属组。

用法: 

chown    . . .[GROUP]  FILE . . .

$ chgrp nogroup text.txt 

12、改变文件权限chmod

chmod 用于改变一个文件的权限。它以“用户组 +/- 权限”的表达方式来增加/删除相应的权限。具体来说,用户组包括了文件属主(u)、文件属组(g)、其他人(o) 和所有人(a),而权限则包括读取(r、w、x)

用法:

chmod  . . .[OPTION] . . .[FILE]. . .

例:
$chmod u+x test.txt                                                         
$chmod u-x test.txt                                                       
$chmod ug=wr、o=r  text.txt   

13、阅读文件的头部和尾部:head 和 tail

用法: 

head/tail    . . .[OPTION]. . . FILE 

常用参数:

     不带任何参数    显示文件的头部/尾部 10 行;

     -n            按指定的行数显示文件的头部/尾部 ;

14、查看文本文件:cat 、more 和 less

cat命令用来一次性查看全部文本文件的内容,后跟文件名作为参数.也可以带上 -n 显示每行的行号。如果文件长达几十上百页,不建议使用 cat.

more 命令用来分页查看文本文件。空格翻页;回车向下滚动一行;Q键退出。

less更人性化的文本阅读工具。 

15、编辑器:vim

vim 是UNIX 和 Linux 上标配的编辑器,功能十分强大。

用法 :

vim file  

或  vim

编辑保存文件

分插入和命令两种模式。

插入模式:

操作:输入字符,并可以按光标键移动输入字符位置.

命令

操作

a

在光标后插入

i

在光标所在位置插入

o

在光标所在位置的下一行插入

Esc

进入命令模式

:

进入行命令模式

命令模式

执行除输入字符之外的所有操作,包括保存、搜索、移动光标等。

vim 启动默认是在命令模式,如果在编辑模式,需要按 Esc 切换回命令模式.

可以使用光标键控制上下左右移动,或者 h、j、k、l移动。

保存和退出

保存文件、退出等需要切换到行命令模式,在插入模式下输入 Esc 再 输入:w  :q 或 :wq 等。

前提:须切换到命令模式。注意组合命令执行的顺序:w ->q ->!

命令

操作

:w

保存文件

:w filename

另存为filename

:q

退出Vim

:q!

强行退出,放弃保存

搜索字符串

前提:须切换到命令模式

/string 用于向下搜索一个字符串

?string 用于向上搜索一个字符串

如果需要启动或关闭大小写敏感,执行:

:set ignorecase                                                                
或
:set noignorecase                                                              

替换字符串

前提:须切换到命令模式。

语法 :  

 :[range]s/pattern/string/[c、e、g、i]

这条命令将 pattern 所代表的字符串替换成 string。开头的range 用于指定替换作用的范围,如“1,10” 表示从第1行到第10行,“1,$”表示从第1行到最后一行,也就是全文。全文也可以用 “%” 表示。

最后的方括号是可选选项,含义如下:

标 志

含 义

c

每次替换前询问

e

不显示错误信息

g

替换一行中的所有匹配项(这个选项通常需要使用)

i

不区分大小写

如Windows 环境下的源码经常会有 “^M”的字符,要清除可以使用下面的命令:

:%s/^M$//g 

删除、复制、粘贴

前提:须切换到命令模式。

命令

操作

x

删除光标所在位置的字符

dd

删除光标所在的行,  2 dd 表示删除2行

D

删除光标所在位置到行尾之间所有的字符

d

普遍意义上的删除命令,和移动命令配合使用。例如dw 表示删除光标所在位置到下一单词词头之间所有的字符

yy

复制光标所在的行

y

普遍意义上的复制命令,和移动命令配合使用。例如yw表示复制光标所在位置到下一个单词词头之间所有的字符

p

在光标所在位置粘贴最近复制/删除的内容

撤销和重做

前提:须切换到命令模式。

命令

操作

u

撤销一次操作

Ctrl+R

重做被撤销的操作

前提:须切换到命令模式。

语法 :  

:[range]s/pattern/string/[c、e、g、i]

程序员特有配置

:syntax   on       ##  语法高亮                                         
:set autoindent      ##  自动缩进                                         
:set shiftwidth=4    ##  设置Tab 键对应的空格数                  

16、查找命令——find

作用:  在指定范围内迅速查找到文件。

用法: 

find  [OPTION]  [path . . .]  [expression]

例:

$find /usr  -name test.txt    

【OPTION选项】

 特殊情况才会使用,建议日后查帮助                                                  

常用参数:

 -type            查找时指定文件的类型,可使用参数如下表;

-atime n        查找最后一次使用在n天前的文件,n 使用负数表示;  

-mtime n       查找最后一次修改在n天前的文件;

-maxdepth n         查找目录的最大深度

-mindepth n         从指定的目录的第几层深度开始查找  

参数

含义

参数

含义

b

  块设备文件

f

    普通文件

c

  字符设备文件

p

    命名管道

d

  目录文件

l

    符号链接

17、更快速的定位文件——locate命令

作用:  火箭般的速度定位文件。

用法: 

locate   [expression] pattern

locate 并不进入子目录进行搜索,它通过检索数据库来确定文件的位置。可以使用 updatedb 来更新检索数据库。

18、查找文件内容——grep命令

作用:  在文件中寻找某些信息。

用法: 

grep [OPTIONS]  PATTERN [FILE...]   ## pattern 使用基础正则表达式

$grep  open   ./test.c
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会飞的鱼-blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值