kali日常快捷命令(用到就更新)
什么BASH命令?
- 在Linux上采用bash作为标准,基本上它描述了对带有“.sh”扩展名的vi编辑器等文本的处理并执行。 与编程一样,它有许多函数,如变量,函数和算术处理,所以如果你是一个小程序,你可以用bash编写它。 此外,由于bash是由shell执行的,因此它也称为shell脚本。
查看命令内容 man + 命令 如:man ls
命令分类
Ls、cd、pwd, (查看文件内容:cat、more、tail)、
(对文件经行操作:cp、rm)、
(top: 查看性能)、
(ps:查看进程信息)、
- (grep:筛选内容),
- (ifconfig: Linux ifconfig命令用于显示或设置网络设备)
- (netstat netstat -pantu:查看这台电脑与其他数据的链接情况),
- (awk AWK 是一种处理文本文件的语言,是一个强大的文本分析工具).
- (sortLinux sort 命令用于将文本文件内容加以排序),
- (route), (mount挂载)、
- (dmesg:用于显示开机信息)、
- find.文件查找find)
- (whereis. 查找文件)Echo, vi编辑器
- 应用程序帮助命令:应用程序 + -h 如:nmanp -h
- 显示行号:set net
- vim编辑器进入编辑命令 i a o
- vim结束编辑按esc
- 保存编辑内容退出;qw
- Kali系统的命令行提示符2行改为1行显示快捷键ctrl+p(或者进入文件vim /home/kali/.zshrc第119行把twoline改为oneline)
- clear :清除页面内容
- 如何成为root用户:su - root
- 修改密码:sudo passwd root
- 查看家目录(/root):pwd
- 查看命令提示符(shell):kali:zsh centos:bash
- vi /etc/ssh/sshd_config 配置远程连接
- update-rc.d ssh enable:允许kali远程连接SSH开机启动命令
xshell上传文件命令:rz
xshell下载文件命令:apt install lrzsz- ctrl+shift++ 终端字体放大
- ctrl+- 终端字体缩小
复制:在kali终端下,使用鼠标选中内容,就完成了复制
粘贴:移动光标到需要粘贴的位置,安下鼠标中间的滚轮,就完成了粘贴deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib
deb 代表软件的位置,deb-src表示软件的源代码的位置- 软件的安装以及卸载ifconfig:查看网络配置
kali升级安装包命令:apt upgrade(稳定可靠升级),在升级前我们先用update命令获取安装包的最新信息,
如果不执行update,就直接 apt upgrade进行升级,不会安装最新的安装包- 安装软件包 apt install + 软件名(例如安装burbsuite: apt install burbsuite)
- 简单卸载软件:apt remove burbsuite
- 卸载软件并移除配置文件:apt -get purge burbsuite
- 卸载自动安装并且未使用的软件: apt aotoremive
- 清理安装包:apt - get clear 或者 apt - get autoclear
- 更新系统:apt full -upgrade
- ifconfig eth0:临时配置一块网卡,(eth1两块网卡)
- 按两次tab 能够快速补齐命令
- DNS配置命令:vim /etc/resolv.conf
重启网络服务:/etc/init.d/network
systemctl restart networking- route add default gw 192.168.1.53 设置默认网关
systemctl重启ssh: systemctl restart ssh
/etc/init.d/ssh restart- 允许开机启动ssh:update-rc.d ssh enable
- ctrl + C(ctrl + z): 退出ping命令
网络配置命令:vim /etc/network/interfaces
注释:
iface etho inet dhcp 把这一行,前面加#号注释掉iface etho inet static 配置eth0使用静态地址
address 192.168.1.53 配置eth0的固定IP地址
netmask 255.255.255.0 配置子网掩码
gateway 192.168.1.1 配置网关
设置代理命令文件夹:vim /etc/proxychains4.conf
- ls(关于目录文件信息)
ls:列出当前目录下的内容
其中:①[选项] 参数:
-a 显示所有文件及目录.
-l 除文件名称外,将文件格式、权限、拥有者、文件大小等信息详细列出。
-r 将文件以相反次序显示(原定依英文字母次序正序列出)。
-t 将文件依建立时间之先后次序列出。
-A 同 -a ,但不列出 “.” (目前目录) 及 “…” (父目录)。
-F 根据文件形态,在列出的文件名称后加符号作为标识。例如可执行档则加 “*”, 目录则加 “/”。
-R 若目录下有文件,则目录下所属文件都依序列出。蓝色文件----------目录
白色文件----------一般文件,如文本文件,配置文件,源码文件等
浅蓝色文件----------链接文件,主要是使用ln命令建立的文件。
绿色文件----------可执行文件,可执行的程序。
红色文件-----------压缩文件或者包文件。
cd命令(目录路径位置及其切换)
cd命令的作用
英文为:change directory,用于切换当前工作目录,既可用于切换绝对路径,如cd /tmp/us,也可用于切换相对路径,如cd …。注意cd之后需用英文状态下的空格分隔。cd命令语法详解
命令行:cd [目录名]命令使用实例
进入根目录,即最上层目录。
命令行:cd /拓展知识:根目录和家目录简单区分:
根目录是所有用户的一个共享的部分,是最上层目录,而家目录里面一般只会是当前用户的文件。进入指定目录。
命令行:cd /tmp查看当前所处目录位置:
命令行:pwd
运行结果:切换回上一级目录。命令行:cd …
返回上两级目录
命令行:cd …/…/
运行结果:显示当前目录。
命令行:cd -切换到上一次的操作目录
命令行:cd -
- cat命令((查看文件内容)
cat /var/log/messages # 查看日志
cat命令的作用显示文件内容。
cat命令语法详解命令行:
cat [选项] [文件名]其中:[选项]参数有
n:由 1 开始对所输出所有内容,包括空行进行行数编号。
b:由1开始对所输出内容进行行数编号,但空行仅做显示不进行行数编号。
命令使用实例显示/etc/issue文件内容。命令行:cat /etc/issue
显示文件内容并对其所有内容,包括空行进行行数编号。命令行:cat -n demo.list
more命令(配合less head使用。使用方法已经在里面)
显示文件在一个页面的内容,剩余的按enter向下查看:more /var/log/messages
more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。
more指令基本语法more 要查看的文件
操作 功能说明
空白键 (space) 代表向下翻一页;
Enter 代表向下翻『一行』;
q 代表立刻离开 more ,不再显示该文件内容。
Ctrl+F 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前行的行号:f 输出文件名和当前行的行号
more指令也有其局限性,比如当查找的内容已经在之前显示过了,但是在more指令中是没有方法会退到前面去的。
less指令
less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
1.基本语法
less 要查看的文件
2.操作说明操作 功能说明
空白键 向下翻动一页;
[pagedown] 向下翻动一页
[pageup] 向上翻动一页;
/字串 向下搜寻『字串』的功能;n:向下查找;N:向上查找;
?字串 向上搜寻『字串』的功能;n:向上查找;N:向下查找;
q 离开 less 这个程序;之后我们可以根据之前more指令的操作说明表格来浏览文件。
用less指令查看文件
head #查看前几行
- tail命令(查看文件内容)
tail 与 watch 相结合tail默认情况下,会查看文件的后10行内容: tail /var/log/messageswatch -n 2 tail -n 20 /var/log/messages #每隔两秒显示最后20行的内容
当文件内容比较大的时候,我们可以使用head和tail两个侄女纲领,来分别查看其前面的几行或者后面的几行。这就显得方便了很多。
head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容。基本语法head 文件 (功能描述:查看文件头10行内容)
head -n 5 文件 (功能描述:查看文件头5行内容,5可以是任意行数)选项说明表1-18选项 功能-n <行数> 指定显示头部内容的行数
tail用于输出文件中尾部的内容,默认情况下tail指令显示文件的后10的内容。
基本语法
tail 文件 (功能描述:查看文件后10行内容)
tail -n 5 文件 (功能描述:查看文件后5行内容,5可以是任意行数)
tail -f 文件 (功能描述:实时追踪该文档的所有更新)
- 删除(remove):命令行:rm [选项] [目录名]
- 删除软件 rm + 软件名
- 删除文件夹 rm -rf + 文件夹名 (linux没有回收站,删除时要小心)
rm -rf 目录名字
-r 向下递归,不管有多少级目录,一并删除。
-f 直接强行删除,没有任何提示。
- 只删除空目录。
cp命令
- cp命令的作用
用于复制文件或目录。
cp命令语法详解
命令行:cp [源文件] [目标文件]
cp -r [源目录] [目标目录]
(Ps. 用户使用cp命令复制目录时,必须使用参数 -r 或者 -R,运用实例详见《Kali Linux基础操作学习篇——cp命令(二)》)命令使用实例
将1.txt复制到/tmp目录中。
命令行:cp 1.txt /tmp批量进行文件复制。
命令行:cp 1.txt 2.txt /tmp扩展知识:Linux中新建文件
命令行:touch 文件名
实例:touch 1.txt 2.txt将3.txt复制到/tmp目录中并将文件名改为33.txt。
命令行:cp 3.txt /tmp/33.txt如需保持目标文件与源文件属性一致,则需使用 -p参数。
命令行:cp -p /tmp/4.txt / 。(PS:“/”代表根目录)
- cp命令的作用
mount挂载命令
- 命令名称:mount
- 命令位置:/bin/mount执行权限:
- 所有用户命令语法:mount [-t 文件系统] 设备文件名 挂载点举个栗子:mount -t iso9600 /dev/sr0 /mnt/cdrom备注:
- -t iso9600 可以不写 因为光盘的文件系统时默固定的。
- /dev/sr0也可以写成/dev/cdrom,sro是原文件,cdrom是 sr0的软链接,是一个快捷方式。可用命令 ll /dev/cdrom进行查看。
- Linux的挂载: 给每个分区分配挂载点。Windows 挂载: 给分区分配盘符的过程叫挂载。Linux中的挂载点类似于window中的盘符。在Windows中的盘符是C、D、F,分区都是自动挂载。windows是自动挂载,当然如果你的Linux是图形界面也是自动挂载。
- 如果是字符界面的,每次开机时都必须手工挂载。windows也有这个过程,U盘插上,一检测,一装驱动,然后给他分配盘符,其实分配盘符的过程就是挂载。
- 在盘符里访问数据,#cd /mnt/cdtom#ls
- umount卸载命令
- 卸载命令 : umount /dev/cdrom 或 /mnt/cdrom备注:
- 写设备文件名/dev/cdrom或挂载点/mnt/cdrom都行,因为他们两个都已经链接到一块了,所以写哪一个都行。but不能两个都写,否则重复,报错。
- 当卸载的时候,千万不能在光盘挂点下面卸载, 因为你在挂载点这个地方,系统会认为你在工作,不让你卸载。所以你要回到自己的宿主目录(家目录)中,再去卸载。
dmesg:用于显示开机信息
dmesg [-cn][-s <缓冲区大小>]
参数说明:-c 显示信息后,清除 ring buffer 中的内容。
-s<缓冲区大小> 预设置为 8196,刚好等于 ring buffer 的大小。
-n 设置记录信息的层级。find
- find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端。
- Linux find 命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则 find 命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。
find path -option [ -print ] [ -exec -ok command ] {} \;
参数说明 :find 根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部份为 path,之后的是 expression。
如果 path 是空字串则使用目前路径,如果 expression 是空字串则使用 -print 为预设 expression。
expression 中可使用的选项有二三十个之多,在此只介绍最常用的部份。
- -mount, -xdev : 只检查和指定目录在同一个文件系统下的文件,避免列出其它文件系统中的文件
-amin n : 在过去 n 分钟内被读取过
-anewer file : 比文件 file 更晚被读取过的文件
-atime n : 在过去 n 天内被读取过的文件
-cmin n : 在过去 n 分钟内被修改过
-cnewer file :比文件 file 更新的文件
-ctime n : 在过去 n 天内创建的文件
-mtime n : 在过去 n 天内修改过的文件
-empty : 空的文件-gid n or -group name : gid 是 n 或是 group 名称是 name
-ipath p, -path p : 路径名称符合 p 的文件,ipath 会忽略大小写
-name name, -iname name : 文件名称符合 name 的文件。iname 会忽略大小写
-size n : 文件大小 是 n 单位,b 代表 512 位元组的区块,c 表示字元数,k 表示 kilo bytes,w 是二个位元组。
-type c : 文件类型是 c 的文件。
- 实例
- 将当前目录及其子目录下所有文件后缀为 .c 的文件列出来:
# find . -name "*.c"
将当前目录及其子目录中的所有文件列出:
# find . -type f
将当前目录及其子目录下所有最近 20 天内更新过的文件列出:
# find . -ctime 20
查找 /var/log 目录中更改时间在 7 日以前的普通文件,并在删除之前询问它们:
# find /var/log -type f -mtime +7 -ok rm {} \;
查找当前目录中文件属主具有读、写权限,并且文件所属组的用户和其他用户具有读权限的文件:
# find . -type f -perm 644 -exec ls -l {} \;
查找系统中所有文件长度为 0 的普通文件,并列出它们的完整路径:
# find / -type f -size 0 -exec ls -l {} \
- 将当前目录及其子目录下所有文件后缀为 .c 的文件列出来:
whereis
Linux whereis命令用于查找文件。
该指令会在特定目录中查找符合条件的文件。这些文件应属于原始代码、二进制文件,或是帮助文件。
该指令只能用于查找二进制文件、源代码文件和man手册页,一般文件的定位需使用locate命令
语法
whereis [-bfmsu][-B <目录>...][-M <目录>...][-S <目录>...][文件...]
参数:-b 只查找二进制文件。
-B<目录> 只在设置的目录下查找二进制文件。
-f 不显示文件名前的路径名称。
-m 只查找说明文件。
-M<目录> 只在设置的目录下查找说明文件。
-s 只查找原始代码文件。
-S<目录> 只在设置的目录下查找原始代码文件。
-u 查找不包含指定类型的文件。
$ whereis -b bash
$ whereis -m bash
- top
Linux top命令用于实时显示 process(进程) 的动态。
使用权限:所有使用者。
top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]
参数说明:
- d : 改变显示的更新速度,或是在交谈式指令列( interactive command)按 s
- q : 没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行
- c : 切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称
- S : 累积模式,会将己完成或消失的子进程 ( dead child process ) 的 CPU time 累积起来
- s : 安全模式,将交谈式指令取消, 避免潜在的危机
- i : 不显示任何闲置 (idle) 或无用 (zombie) 的进程
- n : 更新的次数,完成后将会退出 top
- b : 批次档模式,搭配 "n" 参数一起使用,可以用来将 top 的结果输出到档案内
实例
显示进程信息
# top
显示完整命令
# top -c
以批处理模式显示程序信息
# top -b
以累积模式显示程序信息
# top -S
设置信息更新次数
top -n 2 //表示更新两次后终止更新显示
设置信息更新时间
# top -d 3 //表示更新周期为3秒
显示指定的进程信息
# top -p 139 //显示进程号为139的进程信息,CPU、内存占用率等
显示更新十次后退出
top -n 10
使用者将不能利用交谈式指令来对行程下命令
top -s
- ps
Linux ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器。
ps [options] [--help]
参数:
- ps 的参数非常多, 在此仅列出几个常用的参数并大略介绍含义
- -A 列出所有的进程
- -w 显示加宽可以显示较多的资讯
- -au 显示较详细的资讯
- -aux 显示所有包含其他使用者的行程
au(x) 输出格式 :
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
- USER: 行程拥有者
- PID: pid
- %CPU: 占用的 CPU 使用率
- %MEM: 占用的记忆体使用率
- VSZ: 占用的虚拟记忆体大小
- RSS: 占用的记忆体大小
- TTY: 终端的次要装置号码 (minor device number of tty)
STAT: 该行程的状态:
- D: 无法中断的休眠状态 (通常 IO 的进程)
- R: 正在执行中
- S: 静止状态
- T: 暂停执行
- Z: 不存在但暂时无法消除
- W: 没有足够的记忆体分页可分配
- <: 高优先序的行程
- N: 低优先序的行程
- L: 有记忆体分页分配并锁在记忆体内 (实时系统或捱A I/O)
- START: 行程开始时间
- TIME: 执行的时间
- COMMAND:所执行的指令
- 示例:
查找指定进程格式:
ps -ef | grep 进程关键字 如php。 ps -ef |grep php
显示指定用户信息
# ps -u root //显示root进程用户信息
ifconifg
Linux ifconfig命令用于显示或设置网络设备。
ifconfig可设置网络设备的状态,或是显示目前的设置
ifconfig [网络设备][down up -allmulti -arp -promisc][add<地址>][del<地址>][<hw<网络设备类型><硬件地址>][io_addr<I/O地址>][irq<IRQ地址>]
[media<网络媒介类型>][mem_start<内存地址>][metric<数目>][mtu<字节>][netmask<子网掩码>][tunnel<地址>][-broadcast<地址>][-pointopoint<地址>]
[IP地址]参数说明:
- add<地址> 设置网络设备IPv6的IP地址。
- del<地址> 删除网络设备IPv6的IP地址。
- down 关闭指定的网络设备。
- <hw<网络设备类型><硬件地址> 设置网络设备的类型与硬件地址。
- io_addr<I/O地址> 设置网络设备的I/O地址。
- irq<IRQ地址> 设置网络设备的IRQ。
- media<网络媒介类型> 设置网络设备的媒介类型。
- mem_start<内存地址> 设置网络设备在主内存所占用的起始地址。
- metric<数目> 指定在计算数据包的转送次数时,所要加上的数目。
- mtu<字节> 设置网络设备的MTU。
- netmask<子网掩码> 设置网络设备的子网掩码。
- tunnel<地址> 建立IPv4与IPv6之间的隧道通信地址。
- up 启动指定的网络设备。
- -broadcast<地址> 将要送往指定地址的数据包当成广播数据包来处理。
- -pointopoint<地址> 与指定地址的网络设备建立直接连线,此模式具有保密功能。
- -promisc 关闭或启动指定网络设备的promiscuous模式。
- [IP地址] 指定网络设备的IP地址。
- [网络设备] 指定网络设备的名称。
实例
显示网络设备信息
# ifconfig
启动关闭指定网卡
# ifconfig eth0 down
# ifconfig eth0 up为网卡配置和删除IPv6地址
# ifconfig eth0 add 33ffe:3240:800:1005::2/ 64 //为网卡设置IPv6地址 # ifconfig eth0 del 33ffe:3240:800:1005::2/ 64 //为网卡删除IPv6地址
用ifconfig修改MAC地址
# ifconfig eth0 down //关闭网卡
# ifconfig eth0 hw ether 00:AA:BB:CC:DD:EE //修改MAC地址
# ifconfig eth0 up //启动网卡
# ifconfig eth1 hw ether 00:1D:1C:1D:1E //关闭网卡并修改MAC地址
# ifconfig eth1 up //启动网卡配置IP地址
# ifconfig eth0 192.168.1.56
//给eth0网卡配置IP地址
# ifconfig eth0 192.168.1.56 netmask 255.255.255.0
// 给eth0网卡配置IP地址,并加上子掩码
# ifconfig eth0 192.168.1.56 netmask 255.255.255.0 broadcast 192.168.1.255
// 给eth0网卡配置IP地址,加上子掩码,加上个广播地址启用和关闭ARP协议
# ifconfig eth0 arp //开启
# ifconfig eth0 -arp //关闭设置最大传输单元
# ifconfig eth0 mtu 1500
//设置能通过的最大数据包大小为 1500 bytes
awk(各种函数没了解,以后会加上来)
- AWK 是一种处理文本文件的语言,是一个强大的文本分析工具。
之所以叫 AWK 是因为其取了三位创始人 Alfred Aho,Peter Weinberger, 和 Brian Kernighan 的 Family Name 的首字符。
- 语法 awk [选项参数] 'script' var=value file(s)或awk [选项参数] -f scriptfile var=value file(s)
- 选项参数说明:
- -F fs or --field-separator fs
指定输入文件折分隔符,fs是一个字符串或者是一个正则表达式,如-F:。 - -v var=value or --asign var=value
赋值一个用户定义变量。 - -f scripfile or --file scriptfile
从脚本文件中读取awk命令。 - -mf nnn and -mr nnn
对nnn值设置内在限制,-mf选项限制分配给nnn的最大块数目;-mr选项限制记录的最大数目。这两个功能是Bell实验室版awk的扩展功能,在标准awk中不适用。 - -W compact or --compat, -W traditional or --traditional
在兼容模式下运行awk。所以gawk的行为和标准的awk完全一样,所有的awk扩展都被忽略。 - -W copyleft or --copyleft, -W copyright or --copyright
打印简短的版权信息。 - -W help or --help, -W usage or --usage
打印全部awk选项和每个选项的简短说明。 - -W lint or --lint
打印不能向传统unix平台移植的结构的警告。 - -W lint-old or --lint-old
打印关于不能向传统unix平台移植的结构的警告。 - -W posix
打开兼容模式。但有以下限制,不识别:/x、函数关键字、func、换码序列以及当fs是一个空格时,将新行作为一个域分隔符;操作符**和**=不能代替^和^=;fflush无效。 - -W re-interval or --re-inerval
允许间隔正则表达式的使用,参考(grep中的Posix字符类),如括号表达式[[:alpha:]]。 - -W source program-text or --source program-text
使用program-text作为源代码,可与-f命令混用。 - -W version or --version
打印bug报告信息的版本。
- -F fs or --field-separator fs
- media<网络媒介类型> 设置网络设备的媒介类型。
- mem_start<内存地址> 设置网络设备在主内存所占用的起始地址。
- metric<数目> 指定在计算数据包的转送次数时,所要加上的数目。
- mtu<字节> 设置网络设备的MTU。
- netmask<子网掩码> 设置网络设备的子网掩码。
- tunnel<地址> 建立IPv4与IPv6之间的隧道通信地址。
- up 启动指定的网络设备。
- -broadcast<地址> 将要送往指定地址的数据包当成广播数据包来处理。
- -pointopoint<地址> 与指定地址的网络设备建立直接连线,此模式具有保密功能。
- -promisc 关闭或启动指定网络设备的promiscuous模式。
- [IP地址] 指定网络设备的IP地址。
- [网络设备] 指定网络设备的名称。
- 选项参数说明:
- AWK 是一种处理文本文件的语言,是一个强大的文本分析工具。
- sort
- Linux sort 命令用于将文本文件内容加以排序。
sort 可针对文本文件的内容,以行为单位来排序。
- 语法
sort [-bcdfimMnr][-o<输出文件>][-t<分隔字符>][+<起始栏位>-<结束栏位>][--help][--verison][文件][-k field1[,field2]]
参数说明:
- -b 忽略每行前面开始出的空格字符。
- -c 检查文件是否已经按照顺序排序。
- -d 排序时,处理英文字母、数字及空格字符外,忽略其他的字符。
- -f 排序时,将小写字母视为大写字母。
- -i 排序时,除了040至176之间的ASCII字符外,忽略其他的字符。
- -m 将几个排序好的文件进行合并。
- -M 将前面3个字母依照月份的缩写进行排序。
- -n 依照数值的大小排序。
- -u 意味着是唯一的(unique),输出的结果是去完重了的。
- -o<输出文件> 将排序后的结果存入指定的文件。
- -r 以相反的顺序来排序。
- -t<分隔字符> 指定排序时所用的栏位分隔字符。
- +<起始栏位>-<结束栏位> 以指定的栏位来排序,范围由起始栏位到结束栏位的前一栏位。
- --help 显示帮助。
- --version 显示版本信息。
- [-k field1[,field2]] 按指定的列进行排序。
- Linux sort 命令用于将文本文件内容加以排序。
grep 命令用于查找文件里符合条件的字符串。
grep 指令用于查找内容包含指定的范本样式的文件,如果发现某文件的内容符合所指定的范本样式,预设 grep 指令会把含有范本样式的那一列显示出来。若不指定任何文件名称,或是所给予的文件名为 -,则 grep 指令会从标准输入设备读取数据。
- 语法
grep [-abcEFGhHilLnqrsvVwxy][-A<显示行数>][-B<显示列数>][-C<显示列数>][-d<进行动作>][-e<范本样式>][-f<范本文件>][--help][范本样式][文件或目录...]
参数
参数:
- -a 或 --text : 不要忽略二进制的数据。
- -A<显示行数> 或 --after-context=<显示行数> : 除了显示符合范本样式的那一列之外,并显示该行之后的内容。
- -b 或 --byte-offset : 在显示符合样式的那一行之前,标示出该行第一个字符的编号。
- -B<显示行数> 或 --before-context=<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前的内容。
- -c 或 --count : 计算符合样式的列数。
- -C<显示行数> 或 --context=<显示行数>或-<显示行数> : 除了显示符合样式的那一行之外,并显示该行之前后的内容。
- -d <动作> 或 --directories=<动作> : 当指定要查找的是目录而非文件时,必须使用这项参数,否则grep指令将回报信息并停止动作。
- -e<范本样式> 或 --regexp=<范本样式> : 指定字符串做为查找文件内容的样式。
- -E 或 --extended-regexp : 将样式为延伸的正则表达式来使用。
- -f<规则文件> 或 --file=<规则文件> : 指定规则文件,其内容含有一个或多个规则样式,让grep查找符合规则条件的文件内容,格式为每行一个规则样式。
- -F 或 --fixed-regexp : 将样式视为固定字符串的列表。
- -G 或 --basic-regexp : 将样式视为普通的表示法来使用。
- -h 或 --no-filename : 在显示符合样式的那一行之前,不标示该行所属的文件名称。
- -H 或 --with-filename : 在显示符合样式的那一行之前,表示该行所属的文件名称。
- -i 或 --ignore-case : 忽略字符大小写的差别。
- -l 或 --file-with-matches : 列出文件内容符合指定的样式的文件名称。
- -L 或 --files-without-match : 列出文件内容不符合指定的样式的文件名称。
- -n 或 --line-number : 在显示符合样式的那一行之前,标示出该行的列数编号。
- -o 或 --only-matching : 只显示匹配PATTERN 部分。
- -q 或 --quiet或--silent : 不显示任何信息。
- -r 或 --recursive : 此参数的效果和指定"-d recurse"参数相同。
- -s 或 --no-messages : 不显示错误信息。
- -v 或 --invert-match : 显示不包含匹配文本的所有行。
- -V 或 --version : 显示版本信息。
- -w 或 --word-regexp : 只显示全字符合的列。
- -x --line-regexp : 只显示全列符合的列。
- -y : 此参数的效果和指定"-i"参数相同。
- 语法
设置VM中linux kali 共享文件夹:
在进虚拟机之前先在虚拟机上设置文件共享路径(建议物理主机共享目录与虚拟机创建的目录名相同)
- 创建目录(mkdir): mkdir -p /mnt/hgfs/kali202_share
- 挂载共享文件夹: /usr/bin/vmhgfs-fuse .host:/kali2022_share /mnt/hgfs/kali2022_share -o subtype=vmhgfs-fuse,allow_other
- 设置,使每次开机启动自动挂载共享文件夹
需要在文件 /etc/fstab 的末尾添加多一行:.host:/kali2022_share /mnt/hgfs/kali2022_share fuse.vmhgfs-fuse allow_other 0 0
kali日常快捷命令(用到就更新)的更多相关文章
- mha日常维护命令
mha日常维护命令 http://m.blog.chinaunix.net/uid-28437434-id-3959021.html?/13033.shtml 1.查看ssh登陆是否成功masterh ...
- LINUX系统日常使用命令
一.开关机命令1.shutdown -h now 关闭系统2.init 0 关闭系统3.telinit 0 关闭系统4.shutdown -h hours:minutes 按预定时 ...
- MHA 日常维护命令集
MHA 日常维护命令集 1.查看ssh登陆是否成功 masterha_check_ssh --global_conf=/etc/masterha/masterha_default.conf --con ...
- 2.goldengate日常维护命令(转载)
goldengate日常维护命令 发表于 2013 年 7 月 4 日 由 Asysdba 1.查看进程状态 GGSCI (PONY) 2> info all 2.查看进程详细状态,有助于排错 ...
- xshell的快捷命令
xshell的快捷命令 reconnect Type `help' to learn how to use Xshell prompt.[c:\~]$ ?Internal Commands:new: ...
- 使用mac 终端利用alias设置快捷命令
在终端中输入快捷命令可以提高工作效率,同时可以少记很多命令 如何做: 首先在~/目录下编辑 .bash_profile这个隐藏文件,如果你想直接双击此文件打开编辑的话请在终端输入 Mac 显示隐藏文件 ...
- svn服务配置和日常维护命令
Subversion独立服务和与apache整合服务. 一 .Svn独立服务安装 操作系统: Redhat Linux AS3 AS 4 ContOS AS 4 安装包获取: 下载[url]ht ...
- 程序员必备:Oracle日常维护命令
上一篇讲了Linux的日常维护命令,这篇讲讲Oracle的日常维护命令.工作中需要使用Oracle数据库的童鞋们,相信或多或少都需要对Oracle做一些基本的维护操作,例如导入导出总该有吧?( ...
- linux中添加快捷命令
例如我们需要ssh的时候,每次都要ssh ninetripod@10.0.0.11 -p 12345,这样显然很麻烦. 我们可以vim ~/.bashrc在里面添加alias ssh_='ssh ni ...
- Cisco 日常巡检命令
https://www.cnblogs.com/qzqdy/p/8116903.html 日常排错命令6 交换机的前面板有几个指示灯,用于监控系统的活动和性能.这些指示灯称之为发二极管(LED) 1. ...
随机推荐
- week_8
Andrew Ng 机器学习笔记 ---By Orangestar Week_7_Unsupervised Learning While supervised learning algorithms ...
- Python实验报告(第2章)
实验2:Python语言基础 一.实验目的和要求 1.了解Python的编写规范要求: 2.了解Python的基本数据类型: 3.学会使用Python的五种运算符: 4.掌握Python的基本输入和输 ...
- Proxmark3 Easy 如何流畅的在Linux中操作?
前言 Proxmark3 Easy可谓是国内能买到的比较便宜的RFID卡防设备了,曾在部分hv中出现. Proxmark3 Easy是国内简化的一种设备,利用的是较早的Proxmark3的开源,基础的 ...
- IT编程相关内容汇总 - 进阶者系列 - 学习者系列文章
笔者工作了十多年了,对于技术也有一定的经验,但是IT编程技术的更新是挺快的,特别是各种框架,各种中间件啥的都涌现出来了.这篇博文笔者打算将IT编程的前端.后端.数据库和移动端做一个博文知识汇总,让阅读 ...
- jQuery烟花效果
1.依赖源码 (function($){$.fn.fireworks=function(options){options=options||{};options.opacity=options.opa ...
- Java基础篇——JVM初步
1.JVM的位置 2.JVM体系结构 3.类加载器 虚拟机加载器(java) 启动类(根)加载器(C++) 扩展类加载器(java)↑ 应用程序加载器(java)↑ 4.双亲委派机制 类加载器收到类加 ...
- VUEX 的使用学习一
转载请注明出处: 一.Vuex是什么? 介绍:Vuex 是一个专为 [Vue](https://so.csdn.net/so/search?q=Vue&spm=1001.2101.3001.7 ...
- WeetCode4 —— 二叉树遍历与树型DP
一丶二叉树的遍历 1.二叉树遍历递归写法与递归序 了解过二叉树的朋友,最开始肯定是从二叉树的遍历开始的,二叉树遍历的递归写法想必大家都有所了解. public static void process( ...
- webSocket前端+nodejs后端简单案例多人在线聊天
一:下面是一个简单的案例,回车发送消息,多人在线聊天 1.前端代码 <!DOCTYPE html> <html> <head> <meta charset=& ...
- .NET与大数据
前言 当别人做大数据用Java.Python的时候,我使用.NET做大数据.数据挖掘,这确实是值得一说的事. 写的并不全面,但都是实际工作中的内容. .NET在大数据项目中,可以做什么? 写脚本(使用 ...