日升时奋斗,日落时自省
目录
1、Linux概述
2、LInux环境搭建
3、终端软件XShell 7
4、Linux常用命令
4.1、操作命令
4.1.1、ls查看文件或者目录
4.1.2、pwd显示当前路径
4.1.3、cd进入目录
4.1.4、touch创建文件
4.1.5、cat查看目录
4.1.6、mkdir创建目录
4.1.7、rm删除文件
4.1.8、cp复制文件
4.1.9、mv移动文件
4.1.10、echo文件写入
4.1.11、vim 模式操作
4.2、常用查询命令
4.2.1、ps查看进程
4.2.2、netstat网络状态
经过多年发展,Linux已经成为了世界第一大操作系统
Linux涉及领域:
<1>服务器领域
<2>嵌入式
<3>移动端
Linux主要需要了解什么??
(1)基础命令
为啥上来就是命令,Windows咱都不是,Linux是存在图形化界面的,但是在服务器上往往都是以命令的形式操作,图形化界面占用字节太多上来就是几kb,那服务器哪里受得了。
优势:
<1>节省系统资源:运行图形化界面让系统付出一些额外的资源开销,尤其是对于配置比较低的嵌入式设备
<2>节省网络带宽:如果通过网络访问服务器,使用图形化界面需要传输一帧一帧的图像,占用字节太多,使用命令传输字符串,降低对网络带宽需求
<3>便于批量执行任务:可以通过一些“脚本”代码(比如Linux Shell)批量执行一些任务,完成一些简单的编程工作(就像增删查改)。
(2)系统编程&网络编程
<1>LInux自身提供的一些API,提供给程序员来调试完成一些更复杂的编程任务
<2>但是java中这些功能就能直接用了,这部分功能已经被java自身封装好了(流对象,Thread对象,Socket对象等)
(3)部署javaWeb项目(这个可算是想速成的了)
我们自己写的web程序,为了能够让更多用户访问,就需要一个公网IP,服务器就会满足我们的需求
(1)直接安装在物理机上,但是由于Linux桌面使用起来非常不友好{不推荐}
(2)使用虚拟机软件,将Linux搭建在虚拟机上,(如VMWare之类的)会存在一些bug,导致环境上出现各种不知道哪来的问题{非常不推荐}
(3)使用WSL(通过适用于 Linux 的 Windows 子系统),这个是Windows近几年开发的新功能,在Windows系统内集成了一个Linux,该技术暂时不太成熟{暂时不推荐}
(4)使用云服务器,压轴就是为了突显它好用,能常听见的有腾讯云服务器,阿里云服务器等服务器服务器厂商购买一个云服务器{很推荐云服务器}
注:这些云服务器买下来对于学生来说不贵,有个腾讯云学生计划和阿里云学生计划很便宜(学生认证基本打1点几折)
注:此处选服务器也有一定的要求
<1>选择国内的服务器
<2>选择系统此处我选择的是centos 7版本,7点几都可以
目的:连接Linux
终端软件是一类工具软件,可以和远程的主机建立网络,从而对主机进行一系列操作
常见的终端软件:XShell、Putty、MobaXTerm、Iterm2等等
这里采用XShell终端软件 我们这里选择XShell 7进行下载教程
注:你填写的邮箱务必是有效的,点击下载后就会给你刚刚填写的邮箱发送一个连接,就是免费版的,点击下载就行
安装一路next到结束就行了,安装难度(一颗星) ☆
此处基本需要买的和需要下载终端基本就结束了
注意:连接中还需要一点点东西
<1>服务器外网IP
<2>服务器的管理账户(固定为root)
<3>管理账户密码(在阿里云服务器网站上设置)
打开XShell 7之后
使用命令前提及一点点小干货:
<1>Linux使用的是命令完成操作,tab键可以补全Linux命令
<2>复制快捷键:ctrl+insert 粘贴快捷键: shift+insert
<3>如果输入命令途中命令或者目录敲错了,可以ctrl+c取消当前命令
使用方法 :ls 选项 目录或者文件 (选项可以省,只能看见文件)
常用选项:
选项 | 功能 |
-a | 列出目录下的所有文件(包括以 . 开头的隐含文件) |
-d | 将目录象文件一样显示,而不是显示其下的文件 |
-k | 以 k 字节的形式表示文件的大小 |
-l | 列出文件的详细信息 |
-r | 对目录反向排序 |
-t | 以时间排序 |
-R | 列出所有子目录下的文件(递归) |
作用:显示用户当前所在目录
主要也就是怕当然不知道在那个文件目录下;便于下一步操作
Linux系统与Windows文件目录一样,但是进入方式有所不同罢了,Windows使用图形化界面进入(双击或者右键点击打开),Linux使用命令进行
使用方法:cd 目录名
特殊目录存在:
<1> / 称为根目录
<2> . 称为当前目录
<3> .. 称为当前目录的上级目录
使用方法: touch 选项 文件(选项可以省略)
作用:touch 命令参数可以更改文档或者目录的日期时间 ,包括存取时间和更改时间 或者创建一个不存在的文件
使用方法 :cat 选项 文件(选项可以省略)
作用:查看文件内容
使用方法:mkdir 选项 想要创建目录的名称 (选项可以省略)
作用: 创建目录
选项 -p 可以递归创建多级目录
使用方法:rm 选项 文件名
作用:删除文件或者目录
常用选项:
<1>-f 及时文件属性为只读(保护状态),也会被删除(强制删除)
<2>-i 删除前逐一询问确认
<3>-r 删除目录机器下所有文件
注:重点中的重点:不要轻易删除尤其是 rm -rf / 这个命令,看看就行,保持敬畏之心,这就把根目录删了,造成影响很大,你自己电脑删除玩没啥,可以重装系统,但是出去了就别这么玩
使用方法:cp 选项 源文件或者目录 目标文件或者目录
作用:复制文件或者目录
常用选项:
<1>-f 强制复制文件或者目录 不论母的文件或者目录是否存在
<2>-i 覆盖文件之前先询问用户
<3>-r 递归处理 指定目录下的文件与子目录一并处理,若源文件或者目录的形态,不属于mulu或者符号链接,则一律视为普通文件处理
<4>-R 递归处理 指定目录下的文件及子目录一并处理
使用方法:mv 选项 源文件或者目录 目标文件或者目录
作用:
<1>视mv命令中第二个参数类型的不同(是目标文件还是目标目录),mv命令将文件重命名或将其移至一个新的目录中
<2>当第二个参数类型是文件时,mv命令完成文件重命名,此时,源文件只能有一个(也可以是源目录名),它将所给的源文件或目录重命名为给定的目标文件名
<3>当第二个参数是已存在的目录名称时,源文件或目录参数可以有多个,mv命令将各参数指定的源文件均移至目标目录中
使用方法 :
<1>echo 内容 (这样只会直接输出出来)
<2>echo 内容 > 文件名 (将内容写到文件中)
<3>echo 内容 >> 文件名 (防止文件覆盖 在文件内容原有基础上加内容)
作用:将内容写入文件
vim相当于Linux 上默认的记事本,vim用起来笔记本要稍微麻烦一点点
使用方法:vim 文件名
<1>进入插入模式:vim 打开文件后默认是普通模式. 普通模式下键盘的按键表示一些特殊功能的快捷键. (例如按下 j 并不是输入字母 "j", 而是表示光标往下移动一行). 需要进入插入模式才能进行文本编辑
注意:使用 i 键可以进入到插入模式. (左下角提示 --INSERT-- ) 然后就可以像记事本一样正常编辑了
<2>保存 :在插入模式下不能保存文件,需要先退回到普通模式下,esc键 回到普通模式下
在普通模式下 输入 :w (英文冒号w),再按下回车 即可保存
<3>退出:在插入下不能退出 ,需要先回到普通模式
在普通模式下输入:q 再按回车就能退出
ps 参数
作用:查看当前正在运行的进程
常用选项:
<1>a 显示一个终端的所有进程
<2>u 以用户为主的格式来显示程序的状况
<3>x 显示所有程序,不以终端机来区分
ps aux | grep "进程名"
ps aux | grep "进程id"
使用方法:netstat 参数
作用:查看系统上的网络状态
常用选项:
<1>-a 显示所有正在或者不在
<2>-n 显示数字形式地址而不是去解析主机 端口或用户名
<3>-p 显示套字节所属进程的PI和名称
netstat -anp
netstat -anp | grep “进程名”
netstat -anp | grep “端口号”