Java linux 高级指令

1.1 touch命令

创建空文件:touch 文件
在这里插入图片描述

1.2 stat命令

查看文件详情:stat 文件或目录
在这里插入图片描述

1.3 vi与vim

vi/vim介绍
1、vi介绍

vi是 visual interface的简称, 是linux中最经典的文本编辑器。

  • vi的特点
    • 只能是编辑 文本内容, 不能对 字体 段落进行排版
    • 不支持鼠标操作
    • 没有菜单
    • 只有命令
  • vi编辑器在 系统管理 服务器管理 编辑文件时, 其功能永远不是图形界面的编辑器能比拟的

2、vim介绍

vim:是从 vi (系统内置命令)发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。

vim 则可以说是程序开发者的一项很好用的工具。
vi/vim模式
vi/vim模式主要分为以下三种:

命令模式:在Linux终端中输入“vim 文件名”就进入了命令模式,但不能输入文字。
**编辑模式:**在命令模式下按i就会进入编辑模式,此时就可以写入程式,按Esc可回到命令模式。
**末行模式:**在命令模式下按:进入末行模式,左下角会有一个冒号出现,此时可以敲入命令并执行。

下面是三种模式的简单分析图:
在这里插入图片描述
上图总结

上面的三种模式简单总结下就是:
1、vim 开始进入时是命令模式;
2、按下I的时候会进入编辑模式;
3、按下ESC然后在按下:的时候是末行模式;

打开和新建文件
使用vim不但可以打开一个现存的文件;也可以生成(vim后的文件不存在的情况下)一个文件
使用者权限:当前文件的权限用户

  • 在终端中输入vim在后面跟上 文件名 即可
  • 本地要加入命令工具:yum install vim
vim txtfile.txt
  • 如果文件已经存在, 会直接打开该文件
  • 如果文件不存在, 保存且退出时 就会新建一个文件
  • 注意
    我们通过下面的三种模式切换详细阐述vim的用法

三种模式切换

1、进入命令模式

上接上面的例子,我们执行下面的命令其实就是进入了命令模式

vim txtfile.txt

执行效果如下图
在这里插入图片描述

2、进入编辑模式

上接上面的例子,按i进入插入模式

  • 在 vi 中除了常用 i 进入编辑模式 外, 还提供了一下命令同样可以进入编辑模式
命令英文功能常用
iinsert在当前字符前插入文本常用
Iinsert在行首插入文本较常用
aappend在当前字符后添加文本
Aappend在行末添加文本较常用
o在当前行后面插入一空行常用
O在当前行前面插入一空行常用

上图可以表现为以下形式,如下图

在这里插入图片描述
执行效果如下图
在这里插入图片描述
由上图左下角我们看到【插入】(英文版为INSERT),说明我们进入了编辑模式

我们在里面插入数据,如下图

因为我们是一个空文件,所以使用【I】或者【i】都可以

如果里面的文本很多,要使用【A】进入编辑模式,即在行末添加文本
3、进入末行模式

编辑模式不能保存文件
必须先推到命令模式
先按Esc键退出到命令模式
然后按小写的:wq 正常保存退出

进入末行模式—》按符号: 鼠标跑到屏幕的最后一行,执行效果如下图

在这里插入图片描述
然后按小写的:wq 正常保存退出
在这里插入图片描述
退出后显示【已写入】
以下为其他的退出模式:

:q 当vim进入文件没有对文件内容做任何操作可以按"q"退出

:q! 当vim进入文件对文件内容有操作但不想保存退出

:wq 正常保存退出

:wq! 强行保存退出,只针对与root用户或文件所有人
总结

三种模式的切换,其实就完成了文件创建、编辑、保存、退出四个步骤

那么接下来,我们学习下一个命令

查看刚才新创建的文件
vim 查找关键字 末行模式下 /查找的内容 如果想找下一个 按 n

vim可以查看日志吗?

​ 如果日志文件比较小,可以

​ 如果日志文件比较大,不可以, 因为vim查看文件的时候,要把整个文件加载到内存里面。

文件查看
以下5个为文件查看命令,我们只讲4个常用的命令,head不在赘述

序号命令对应英文作用
01cat 文件名concatenate查看小文件内容
02less -N 文件名less分频 显示大文件内容
03head -n 文件名查看文件的前一部分
04tail -n 文件名查看文件的最后部分
05grep 关键字 文件名grep根据关键词, 搜索文本文件内容

总结:

以上5个命令都可以查询文件的内容,他们的功能如下

通过 cat 会一次显示所有的内容, 适合 查看内容较少 的文本文件

less 命令适合查看 内容较多 的文本文件

通过 head 命令查看文档的前几行内容

通过 tail -10f 文件 命令 查看文档(日志)的后几行内容

通过 grep 命令 搜索存在 关键字 的行

1.4 cat命令

cat 是一个文本文件查看和连接工具。查看一个文件的内容,用cat比较简单,就是cat 后面直接接文件名,如cat txtFiles.txt
使用者权限:当前文件的权限用户
查看文件名为txtfile.txt的内容
**
语法格式

cat 文件

看文件名为txtfile.txt的内容

cat txtfile.txt

查看文件名为txtfile.txt的内容(加入行号)

cat -n txtfile.txt

1.5 grep命令

grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为 -,则 grep 指令会从标准输入设备读取数据。

使用者权限:当前文件的权限用户
grep 命令用于查找文件里符合条件的字符串,语法如下:
grep 关键字 文件
-a :将 binary 文件以 text 文件的方式搜寻数据
-c :计算找到 ‘搜寻字符串’ 的次数
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行!
1、搜索 存在关键字【我】 的行的文件

grep 我 txtfile.txt

在这里插入图片描述
搜索 存在关键字【我】 的行 且 显示行号

grep -n 我 txtfile.txt

在这里插入图片描述
忽略大小写 搜索 存在关键字 的行

grep -i a txtfile.txt

在这里插入图片描述

搜索 不存在关键字 的行

grep -v 我 txtfile.txt

在这里插入图片描述
查找指定的进程信息(包含grep进程)

ps -ef | grep  sshd

说明
除最后一条记录外,其他的都是查找出的进程;最后一条记录结果是grep进程本身,并非真正要找的进程

查找指定的进程信息(不包含grep进程)

ps aux | grep sshd | grep -v "grep"
 ps -ef|grep -c sshd

1.6 tail命令

ail 命令可用于查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件。

tail -f filename 会把 filename 文件里的最尾部的内容显示在屏幕上,并且不断刷新,只要 filename 更新就可以看到最新的文件内容。

使用者权限:当前文件的权限用户
命令格式:
命令格式:

tail [参数] [文件]  

显示文件的最后 3 行,输入以下命令:

tail -3 txtfile.txt 

在这里插入图片描述

、动态显示文档的最后内容,一般用来查看日志,请输入以下命令:

tail -f txtfile.txt

3、显示文件txtfile.txt 的内容,从第 2 行至文件末尾

tail  -n +2  txtfile.txt

在这里插入图片描述

总结
在tail使用的过程中,我们使用最多的就是查看文件末尾多多少行
使用tail -nf txtfile.txt
通常都是在查看日志信息(报错调试时使用)

1.7 less命令

less用于查看文件,但是less 在查看之前不会加载整个文件。
使用者权限:当前文件的权限用户
语法

less [参数] 文件 

1、查看文件

less txtfile.txt

2、查看命令历史使用记录并通过less分页显示

history | less

在这里插入图片描述
们输入【j】可以前进行

​ 输入【k】可以后退行

​ 输入【G】可以 移动到最后一行

​ 输入【g】可以移动到第一行

​ 输入【ctrl + F】 向前移动一屏(类似于我们在浏览器中的数据分页的下一页)

​ 输入【ctrl + B】 向后移动一屏(类似于我们在浏览器中的数据分页的上一页)

其他命令

1.全屏导航

  • ctrl + F - 向前移动一屏
  • ctrl + B - 向后移动一屏
  • ctrl + D - 向前移动半屏
  • ctrl + U - 向后移动半屏

2.单行导航

  • j - 向前移动一行
  • k - 向后移动一行

3.其它导航

  • G - 移动到最后一行
  • g - 移动到第一行
  • q / ZZ - 退出 less 命令

1.8vim定位行

在日常工作中,有可能会遇到打开一个文件,并定位到指定行的情况
例如: 在开发时, 知道某一行代码有错误,可以快速定位到出错误代码的位置
这个时候,可以使用以下命令打开文件

由于我们这里还没有学到上传文件的命令,所以我们这里还是使用上面的txtfile.txt例子,我们打开文件定位到第6行,如下:

vim txtfile.txt +6

1.9异常处理

  • 如果 vim异常退出, 在磁盘上可能会保存有 交换文件
  • 下次再使用 vim 编辑文件时, 会看到以下屏幕信息,
    在这里插入图片描述
    解决方案:

将后缀名为.swp的文件删除即可恢复

再次编辑文件不在出现提示警告!

2.0操作扩展

要熟练使用vi/vim, 首先应该学会怎么在 命令模式下 快速移动光标
编辑操作命令 能够和移动命令一起使用
上 下 左 右
在这里插入图片描述

命令功能手指
h向左食指
j向下食指
k向上中指
l向右无名指

也可以使用键盘上的上下左右箭头,这个更有方向感。
行内移动

命令英文功能
wword向后移动一个单词
bback向前移动一个单词
0行首
^行首, 第一个不是空白字符的位置
$行尾

行数移动

命令英文功能
gggo文件顶部
Ggo文件末尾
数字gggo移动到 数字 对应行数
数字Ggo移动到 数字 对应行数
: 数字移动到数字对应的 行数

屏幕移动

命令英文功能
Ctrl + bback向上翻页
Ctrl + fforward向下翻页
HHead屏幕顶部
MMiddle屏幕中间
LLow屏幕底部

选中文本(可视模式)

  • 学习 复制 命令前, 应该先学会 怎么样选中 要复制的代码
  • 在 vi/vim 中要选择文本, 需要显示 visual 命令切换到 可视模式
  • vi/vim 中提供了 三种 可视模式, 可以方便程序员的选择 选中文本的方式
  • 按 ESC 可以放弃选中, 返回到 命令模式
命令模式功能
v可视模式从光标位置开始按照正常模式选择文本
V可视化模式选中光标经过的完整行
Ctrl + v可是块模式垂直方向选中文本

撤销和恢复撤销(保命指令)
在学习编辑命令之前,先要知道怎样撤销之前一次 错误的 编辑操作

命令英文功能
uundo撤销上次的命令(ctrl + z)
Ctrl + ruredo恢复撤销的命令

** 删除文本**

命令英文功能
xcut删除光标所在的字符,或者选中的文字
d(移动命令)delete删除移动命令对应的内容
dddelete删除光标所在行, 可以删除多行
Ddelete删除至行尾

提示: 如果使用 可视模式 已经选中了一段文本, 那么无论使用 d 还是 x, 都可以删除选中文本

删除命令可以和移动命令连用, 以下是常见的组合命令(扩展):

命令作用
dw从光标位置删除到单词末尾
d}从光标位置删除到段落末尾
ndd从光标位置向下连续删除 n 行

复制和剪切

  • vi/vim 中提供有一个 被复制文本的缓冲区
    • 复制 命令会将选中的文字保存在缓冲区
    • 删除 命令删除的文字会被保存在缓冲区
    • 在需要的位置, 使用 粘贴 命令可以将缓冲对的文字插入到光标所在的位置
命令英文功能
yycopy复制行
d(剪切命令)delete剪切
dd(剪切)delete剪切一行, 可以 ndd 剪切n行
ppaste粘贴

提示:

  • 命令 d 、x 类似于图形界面的 剪切操作 – ctrl + x
  • 命令 y 类似于 图形界面的 复制操作 – Ctrl +
  • 命令 p 类似于图形界面的 粘贴操作 – Ctrl + v
  • vi中的文本缓冲区只有一个,如果后续做过 复制、剪切操作, 之前缓冲区中的内容会被替换.

注意

  • vi中的 文本缓冲区 和 系统的 剪切板 不是同一个
  • 所以在其他软件中使用 Ctrl + C 复制的内容, 不能再 vi 中通过 p 命令粘贴
  • 可以在 编辑模式 下使用 鼠标右键粘贴

** 替换**

命令英文功能工作模式
rreplace替换当前字符命令模式
Rreplace替换当前行光标后的字符替换模式
  • R 命令可以进入 替换模式, 替换完成后, 按下ESC , 按下 ESC 可以回到 命令模式
  • 替换命令 的作用就是不用进入 编辑模式, 对文件进行 轻量级的修改

** 缩排和重复执行**

命令功能
>>向右增加缩进
<<向左减少缩进
.重复上次命令
  • 缩进命令 在开发程序时, 统一增加代码的缩进 比较有用!
    • 一次性 在选中代码前增加 4 个空格, 就叫做 增加缩进
    • 一次性 在选中代码前删除 4 个空格, 就叫做 较少缩进
  • 可视模式 下, 缩排命令 主需要使用 一个 > 或者 <

在程序中, 缩进 通常用来表示代码的归属关系

  • 前面空格越少, 代码的级别越高
  • 前面空格越多, 代码的级别越低
  • 11) 查找

常规查找

命令功能
/str查找str
  • 查找到指定内容之后, 使用 Next 查找下一个出现的位置

    • n : 查找下一个
    • N : 查找上一个
  • 如果不想看到高亮显示, 可以随便查找一个文件中不存在的内容即可

  • 单词快速匹配

命令功能
*向后查找当前光标所在单词
#向前查找当前光标所在单词
  • 在开发中, 通过单词快速匹配, 可以快速看到这个单词在其他位置使用过

** 查找并替换**

  • vi/vim 中查找和替换命令需要在 末行模式 下执行
  • 记忆命令格式
:%s///g
  1. 全局替换
  • 一次向 替换文件中的 所有出现的旧文本

  • 命令格式如下

    :%s/旧文本/新文本/g
    
  1. 可视区域替换
  • 先选中 要替换文字的 范围
  • 命令格式如下
:s/旧文本/新文本/g
  1. 确认替换:

c confirm 确认

  • 如果把末尾的 g 改成 gc 在替换的时候, 会有提示! 推荐使用

  • 命令格式如下

    :%s/旧文本/新文本/gc
    
  1. y - yes 替换
  2. n - no 不替换
  3. a - all 替换所有
  4. q -quit 退出替换
  5. l - last 最后一个, 并把光标移动到行首
  6. ^E 向下滚屏
  7. ^Y 向上滚屏

显示行号: set nu

2.1find查找

find概念

find命令用来在指定目录下查找文件。

任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。

语法

find <指定目录> <指定条件> <指定内容>

1、将目前目录及其子目录下所有延伸档名是 gz 的文件查询出来

find . -name "*.gz"

执行效果如下图
在这里插入图片描述
2、全局搜索 /

 find / -name  "java"

执行效果如下
在这里插入图片描述

2.2Linux备份压缩

tar命令

tar的主要功能是打包、压缩和解压文件。

tar本身不具有压缩功能。他是调用压缩功能实现的
使用者权限:所有用户**

语法

tar[必要参数][选择参数][文件] 

1、将 txtfile.txt文件打包(仅打包,不压缩)

tar -cvf txt.tar txtfile.txt 

2、将 txtfile.txt文件打包压缩(打包压缩(gzip))

tar -zcvf txt.tar.gz txtfile.txt 

总结
参数 f 之后的文件档名是自己取的,我们习惯上都用 .tar 来作为辨识。 如果加 z 参数,则以 .tar.gz 或 .tgz 来代表 gzip 压缩过的 tar包

查看tar中有哪些文件

tar -ztvf txt.tar.gz

将tar 包解压缩

1.新建目录
 mkdir ysFiles
2.复制
 cp txt.tar.gz ./ysFiles/
3.解压缩
 tar -zxvf /home/itcast/ysFiles/txt.tar.gz

2.3 unzip命令

加入命令工具:yum install -y unzip zip
Linux unzip命令用于解压缩zip文件

unzip为.zip压缩文件的解压缩程序
使用者权限:所有用户
语法

unzip[必要参数][选择参数][文件] 

1.查看压缩文件中包含的文件:
**

 unzip -l zFiles.zip

包含了压缩文件里面文件的详细信息
文件大小 日期 时间 文件名称
总数量和总大小

2.如果要把文件解压到指定的目录下,需要用到-d参数

unzip -d ./指定目录 文件

2.4网络与磁盘管理

网络命令
ifconfig命令
ifconfig是Linux中用于显示或配置网络设备的命令,英文全称是network interfaces configuring

ifconfig命令用于显示或设置网络设备。

ifconfig可设置网络设备的状态,或是显示目前的设置。

使用者权限:所有(设置级别的需要管理员)用户

需要命令安装网络工具 yum -y install net-tools

1、显示激活的网卡信息

ifconfig

ping命令

ping命令用于检测主机。

执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。

使用者权限:所有用户
检测是否与主机连通

 ping www.baidu.com	

icmp_seq:ping序列,从1开始

ttl:IP生存时间值

time: 响应时间,数值越小,连通速度越快
2、指定接收包的次数

ping -c 2 www.baidu.com

和上面不同的是:收到两次包后,自动退出

总结:
ping命令也是我们在开发过程中常用到的命令
通常使用 ping xxx.xxx.xxx.xxx命令进行检测本地与
目标机器是否连通

netstat命令

需要命令安装网络工具 yum -y install net-tools

netstat命令用于显示网络状态。
使用者权限:所有用户
显示详细的连接状况

netstat -a

执行效果如下
在这里插入图片描述
比如上面的【0 0.0.0.0:ssh】它是远程终端连接Linux的ssh服务,默认使用了22端口,它的状态【State】是处于监听状态,属于正常。
显示网卡列表

netstat -i

执行效果如下
在这里插入图片描述

查看某个端口是否被占用
netstat -nap | grep pid
netstat -nap | grep port

查看内存和硬盘容量
1 查看硬盘容量
df -h
2 查看内存使用
free -h

linux文件目录

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值