kali Linux 效率技巧

一、kali常用快捷键

二、kali窗口工具tmux

一切命令都是以Ctrl+b开始

水平窗格:ctrl+b+"

垂直窗格:ctrl+b+%

移动焦点:ctrl+b+方向键

关闭窗格:exit 或 ctrl+b+x

查看帮助:ctrl+b+?

三、Linux命令行快速技巧

命令和文件名补全:tab

切换回上一个工作目录:cd -

快速返回家目录:cd ~

在一个命令中运行多个命令:使用;分隔多段命令

仅在上一个命令成功执行后,才执行下一个命令:&&

轻松搜索您使用过的命令:ctrl + r 关键词

解除Linux终端意外冻结:Ctrl + S

解冻终端:Ctrl-Q

将光标移至行首:Ctrl + A

将光标移至行尾:Ctrl + E

把光标前的内容全删掉:Ctrl+U

把光标后的内容全删掉:Ctrl+K

实时读取日志文件:tail -f

读取压缩日志而不解压缩:zless,zcat,zgrep等命令可以查看压缩包内容,不必提取文件

读取大文件:less

重新使用上一个命令中的最后一项:!$

在最后一个命令的选项之间来回移动的次数:alt + .

重用当前命令中的上一个命令:!!

sudo !!

使用别名来修正错别字:在您的bashrc中放置一个别名:alias gerp=grep

复制:Ctrl + Shift + C

粘贴:Ctrl + Shift + V

终止正在运行的命令/进程:Ctrl + C

清空文件而不删除它:> 文件名

查找是否有包含特定文本的文件:grep -Pri 要搜索的字符串 路径

对任何命令都可使用帮助命令:help

四、vim常用命令

4.1 普通模式

以下命令请在普通模式执行

4.1.1 进入命令模式命令

vi filename : 打开或新建文件,并将光标置于第一行首
vi +n filename :打开文件,并将光标置于第n行首
vi + filename :打开文件,并将光标置于最后一行首
vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处
vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename
vi filename....filename :打开多个文件,依次编辑

4.1.2 移动光标

j:向下
20j: 向下移动 20 行
k:向上
h:向左
l:向右
0:数字0,到行首
^:到行首第一个字符,如果前面有空格的话
$:到行尾
n$:光标移至第n行尾
gg:快速到文件头
G:快速到文件尾
50G:跳转到第 50 行
n+:光标下移n行
n-:光标上移n行
w:光标跳到下个字的开头
e:光标跳到下个字的字尾
b:光标回到上个字的开头
#l:光标移到该行的第#个位置,如:5l,56l。
ctrl+ b:屏幕往后移动一页。
ctrl + f:屏幕往前移动一页。
ctrl + u:屏幕往后移动半页。
ctrl + d:屏幕往"前"移动半页。
ctrl + g列出光标所在行的行号
space:光标右移一个字符
Backspace:光标左移一个字符
):光标移至句尾
( :光标移至句首
}:光标移至段落开头
{:光标移至段落结尾
H :光标移至屏幕顶行
M :光标移至屏幕中间行
L :光标移至屏幕最后行
注意:请不要在编辑模式进行光标移动,效率很低下

4.1.3 复制

yy:复制一行
8yy:向下复制8行
yw:复制光标开始的一个单词
8yw:复制8个字到缓冲区
y$:复制光标到行尾
yfA:复制光标到第一个大写A中间的内容
y2fA:复制光标到第二个大写A中间的内容
n,my:指定n到m行复制

4.1.4 剪切

x:向后剪切一个一个字符,如果是在行尾,则为向前剪切
4x:剪切4个
xp:非行尾交换两个字符,如从bs变成sb

4.1.5 删除

dd:删除一行
100dd:删除100行
dw:删除一个单词
df":删除到出现的第一个双引号
d^:删除至行首
8dd:从光标所在行开始删除8行
x:每按一次,删除光标所在位置的后面一个字符。
6x:6x表示删除光标所在位置的后面6个字符。
X:大写的X,每按一次,删除光标所在位置的前面一个字符。
20X:例如,20X表示删除光标所在位置的前面20个字符。
Ctrl+u:删除输入方式下所输入的文本
注意:删除的内容会放到剪贴板,按p即可粘贴到其他地方。

4.1.6 粘贴

p(小写):粘贴复制或剪切的内容,将缓冲区内的字符贴到光标所在位置。
在光标下一行粘贴
注意:所有与y有关的复制命令都必须与p配合才能完成复制与粘贴功能
5p:将复制或剪切的内容粘贴5次
P(大写):在光标上一行粘贴(插入)

4.1.7 替换和撤销

r+<待替换字母>:将游标所在字母替换为指定字母
R:连续替换,直到按下Esc
cc:替换整行,即删除游标所在行,并进入编辑模式
cw:替换一个单词,即删除一个单词,并进入编辑模式
c#w:例如,c3w表示更改3个字
u{n}:撤销一次或n次操作
U(大写):撤销当前行的所有修改
Ctrl+r:redo,即撤销undo的操作

4.1.8 查找并替换

替换光标所在行第一个匹配的字符串:

# 语法
:s/旧字符串/新字符串

# 实例
:s/one/two

替换光标所在行所有旧字符串为新字符串:

# 语法
:s/旧字符串/新字符串/g

替换第几行到第几行中所有字符串:

# 语法
:n,m s/旧字符串/新字符串/g

# 实例
:2,4 s/one/two/g

最常用的就是全文替换了:

# 语法
:%s/旧字符串/新字符串/g

4.2 命令模式

以下命令请在命令模式下执行 在普通模式下,输入:即可进入。

4.2.1 退出编辑器

wq:保存当前文件并退出或者x
wqa:保存所有文件并退出
q!: 不保存,强制退出
qa!: 有多个文件被打开,同时退出

4.2.2 调整文本

%s/$/sth/ :在行尾追加sth
%s/^M//g :替换掉dos换行符,\^M使用ctrl+v + Enter即可输入
:g/^\s$/d* :删除空行以及只有空格的行
%s/#.*//g :删除#之后的字符,没错,这里使用的是正则。
ce:使本行文本内容居中
ri:使本行文本内容靠右
le:使本行文本内容靠左

4.2.3 查找字符串

  • / 关键字:从光标开始处向文件尾搜索,先按/键,再输入想寻找的字符,如果第一次找的关键字不是想要的,可以一直按n会往后寻找到要的关键字为止。

  • ? 关键字:从光标开始处向文件首搜索,先按?键,再输入想寻找的字符,如果第一次找的关键字不是想要的,可以一直按n会往前寻找到要的关键字为止

在普通模式下,按下/直接进入查找,输入相应的字符串按确定即可

n:查找下一个匹配
N:查找上一个匹配
2n:查找下面第二个匹配

4.3 vim的3种模式的关系

  • 命令模式(command mode) :

控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。

  • 编辑模式(Insert mode)

只有在Insert mode下,才可以做文字输入,按ESC键可回到命令模式 i, I 进入编辑模式 Insert mode : i 为从目前光标所在处输入, I 为在目前所在行的第一个非空格符处开始输入; a, A 进入编辑模式 Insert mode : a 为从目前光标所在的下一个字符处开始输入, A 为从光标所在行的最后一个字符处开始输入; o, O 进入编辑模式 Insert mode : o 为在目前光标所在的下一行处输入新的一行; O 为在目前光标所在处的上一行输入新的一行

  • 底行模式(last line mode)

将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等

4.4 vim时其他命令

4.4.1 显示隐藏行号

:set number 或者 :set nu 显示行号
:set nonumber 或者 :set nonu 隐藏行号
:#  #号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,再回车,就会跳到文章的第15行

4.4.2 底行模式下命令

选项设置

:set all:列出所有选项设置情况
:set term:设置终端类型
:set ignorance:在搜索中忽略大小写
:set list:显示制表位(Ctrl+I)和行尾标志($)
:set number:显示行号
:set report:显示由面向行的命令修改过的数目
:set terse:显示简短的警告信息
:set warn:在转到别的文件时若没保存当前文件则显示NO write信息
:set nomagic:允许在搜索模式中,使用前面不带“\”的特殊字符
:set nowrapscan:禁止vi在搜索到达文件两端时,又从另一端开始
:set mesg:允许vi显示其他用户用write写到自己终端上的信息