Genius Kim's Blog - 工具
type: channel
link: https://blog.if010.com/tag/%E5%B7%A5%E5%85%B7/
items: 九头蛇。。万岁。。。
items: Linux扩展根分区
items: Linux连接OpenVPN
items: CentOS7 安装 Python 3.7
items: find 命令的7种用法
items: Vim分屏操作技巧
items: Linux常用查看系统硬件信息命令
items: sysstat - Linux 性能监视工具
items: 远程工具的天花板
items: 正则那些事

九头蛇。。万岁。。。
type: item
date: 2022-08-23T03:35:00+00:00
description: [scode type="red"]请不要在军事或秘密服务组织中使用，或用于非法目的。这是作者的意愿，不具约束力。很多人工作于这些组织中，无论如何都不关心法律和道德。如果你忽略这一点，你就不是“好”的人之一。[/scode][scode type="yellow"]不，这不是降价文档！老套！[/scode][scode type="blue"]可以通过docker直接下载最新github状态的Hydra：docker pull vanhauser/hydra[/scode]0x00 介绍最大的安全漏洞之一就是是密码，因为这个是每个密码安全研究表明的。这个工具是一个概念验证代码，给研究人员和安全顾问有可能展示未经授权的行为是多么容易从远程访问系统。已经有几种登录黑客工具可用，但是没有一个要么支持多个协议进行攻击，要么支持并行化连接。它经过测试可以在Linux、Windows/Cygwin、Solaris、FreeBSD/OpenBSD、QNX（Blackberry 10）和 MacOS。目前该工具支持以下协议：Asterisk, AFP, Cisco AAA, Cisco auth, Cisco enable, CVS, Firebird, FTP,HTTP-FORM-GET, HTTP-FORM-POST, HTTP-GET, HTTP-HEAD, HTTP-POST, HTTP-PROXY,HTTPS-FORM-GET, HTTPS-FORM-POST, HTTPS-GET, HTTPS-HEAD, HTTPS-POST,HTTP-Proxy, ICQ, IMAP, IRC, LDAP, MEMCACHED, MONGODB, MS-SQL, MYSQL, NCP, NNTP, Oracle Listener,Oracle SID, Oracle, PC-Anywhere, PCNFS, POP3, POSTGRES, Radmin, RDP, Rexec, Rlogin,Rsh, RTSP, SAP/R3, SIP, SMB, SMTP, SMTP Enum, SNMP v1+v2+v3, SOCKS5,SSH（v1 and v2）, SSHKEY, Subversion, Teamspeak（TS2）, Telnet, VMware-Auth,VNC,XMPP这里没有的，你也可以试一下，说不定也可以，而且，新服务的模块引擎非常简单，因此不需要很长一段时间，直到支持更多服务。0x01 获取途径Github项目地址：https://github.com/vanhauser-thc/thc-hydra最新发布、生产版本下载地址：https://github.com/vanhauser-thc/thc-hydra/releasesDocker版本：docker pull vanhauser/hydra 如果您对当前的开发状态感兴趣，公共开发存储库位于Github：# SVN svn checkout https://github.com/vanhauser-thc/thc-hydra #Github git clone https://github.com/vanhauser-thc/thc-hydra 0x02 编译安装wget --no-check-certificate https://github.com/vanhauser-thc/thc-hydra/archive/refs/tags/v9.3.tar.gz tar zxvf thc-hydra-9.3.tar.gz cd hydra-9.3 ./configure make make install 如果你想要 ssh 模块，你必须在你的系统上设置 libssh（不是 libssh2），从https://www.libssh.org获取它，对于 ssh v1 支持，您还需要在 cmake 命令行中添加“-DWITH_SSH1=On”选项。重要提示：如果您在 MacOS 上编译，那么您必须这样做，不要通过 brew 安装 libssh！Ubuntu/Debian，这将安装一些可选模块所需的补充库（请注意，有些可能在您的发行版中不可用）：apt-get install libssl-dev libssh-dev libidn11-dev libpcre3-dev libgtk2.0-dev libmysqlclient-dev libpq-dev libsvn-dev firebird-dev libmemcached-dev libgpg-error-dev libgcrypt11-dev libgcrypt20-dev 这将启用除 Oracle 之外的所有可选模块和…

Linux扩展根分区
type: item
date: 2022-07-09T03:56:52+00:00
description: 准备扫描新硬盘[root@localhost ~]# echo "- - -" > /sys/class/scsi_host/host0/scan [root@localhost ~]# echo "- - -" > /sys/class/scsi_host/host1/scan [root@localhost ~]# echo "- - -" > /sys/class/scsi_host/host2/scan 查看硬盘信息[root@localhost ~]# fdisk -l 磁盘 /dev/sda：299.4 GB, 299439751168 字节，584843264 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理)：512 字节 / 512 字节 I/O 大小(最小/最佳)：512 字节 / 512 字节 磁盘标签类型：dos 磁盘标识符：0x000e1d94 设备 Boot Start End Blocks Id System /dev/sda1 * 2048 2099199 1048576 83 Linux /dev/sda2 2099200 584843263 291372032 8e Linux LVM 磁盘 /dev/sdb：1999.8 GB, 1999844147200 字节，3905945600 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理)：512 字节 / 512 字节 I/O 大小(最小/最佳)：512 字节 / 512 字节 磁盘标签类型：dos 磁盘标识符：0x566bd95b 磁盘 /dev/mapper/centos-data：6293.6 GB, 6293586706432 字节，12292161536 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理)：512 字节 / 512 字节 I/O 大小(最小/最佳)：512 字节 / 512 字节 磁盘 /dev/mapper/centos-swap：4294 MB, 4294967296 字节，8388608 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理)：512 字节 / 512 字节 I/O 大小(最小/最佳)：512 字节 / 512 字节 分区对新硬盘/dev/sdb进行分区[root@localhost ~]# fdisk /dev/sdb 欢迎使用 fdisk (util-linux 2.23.2)。 更改将停留在内存中，直到您决定将更改写入磁盘。 使用写入命令前请三思。 Device does not contain a recognized partition table 使用磁盘标识符 0x85c60777 创建新的 DOS 磁盘标签。 命令(输入 m 获取帮助)：n #新建分区 Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): Using default response p 分区号 (1-4，默认 1)： 起始 扇区 (2048-3905945599，默认为 2048)： 将使用默认值 2048 Last 扇区, +扇区 or +size{K,M,G} (2048-3905945599，默认为 3905945599)： 将使用默认值 3905945599 分区 1 已设置为 Linux 类型，大小设为 1.8 TiB 命令(输入 m 获取帮助)：p #查看分区 磁盘 /dev/sdb：1999.8 GB, 1999844147200 字节，3905945600 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理)：512 字节 / 512 字节 I/O 大小(最小/最佳)：512 字节 / 512 字节 磁盘标签类型：dos 磁盘标识符：0x85c60777 设备 Boot Start End Blocks Id System /dev/sdb1 2048 3905945599 1952971776 83 Linux 命令(输入 m 获取帮助)：w #写入分区 LVM操作创建物理卷[root@localhost ~]# pvcreate /dev/vdb1 Physical volume "/dev/sdb1" successfully created. 查看系统卷组[root@localhost ~]# vgs VG #PV #LV #SN At…

Linux连接OpenVPN
type: item
date: 2022-06-04T11:08:00+00:00
description: 安装OpenVPN[root@localhost ~]# yum install -y epel-release [root@localhost ~]# yum install openvpn lzo -y 已加载插件：fastestmirror, langpacks Loading mirror speeds from cached hostfile * base: mirrors.aliyun.com * epel: my.mirrors.thegigabit.com * extras: mirrors.aliyun.com * updates: mirrors.aliyun.com 软件包 openvpn-2.4.12-1.el7.x86_64 已安装并且是最新版本 软件包 lzo-2.06-8.el7.x86_64 已安装并且是最新版本 无须任何处理 配置客户端文件[root@localhost ~]# vim /etc/openvpn/client/client.conf client dev tun proto tcp remote openvpn.if010.com 1194 resolv-retry infinite nobind persist-key persist-tun ca /etc/openvpn/client/ca.crt cert /etc/openvpn/client/client.crt key /etc/openvpn/client/client.key tls-auth /etc/openvpn/client/ta.key 1 remote-cert-tls server ns-cert-type server cipher AES-256-GCM verb 3 comp-lzo push-peer-info key-direction 1 拷贝相关文件[root@localhost ~]# tree /etc/openvpn/ /etc/openvpn/ ├── client │ ├── ca.crt # 服务端提供 │ └── ta.key # 服务端提供 ├── client.ovpn # 客户端配置文件 ├── passwd # 账号密码文件，需要新建，第一行账号，第二行是密码 └── server 2 directories, 4 files 启动客户端[root@localhost ~]# openvpn \ --daemon \ --auth-user-pass /etc/openvpn/client/passwd \ --config /etc/openvpn/client/client.conf \ --log-append /var/log/openvpn.log 命令参数说明：--daemon # 后台运行--config # 配置文件名称--auth-user-pass # 指定账号密码文件--log-append # 日志文件查看日志[root@localhost ~]# cat /var/log/openvpn.log

CentOS7 安装 Python 3.7
type: item
date: 2022-05-30T13:00:00+00:00
description: 安装依赖yum install -y openssl-devel openssl-static zlib-devel lzma tk-devel xz-devel bzip2-devel ncurses-devel gdbm-devel readline-devel sqlite-devel gcc libffi-devel 下载Python3.7.0wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tgz 开始安装1.解压安装包tar -xvf Python-3.7.0.tgz 2.将解压后文件夹迁移至/usr/local，并进入mv Python-3.7.0 /usr/local cd /usr/local/Python-3.7.0/ 3.执行配置文件并编译安装./configure make make install 4.在/usr/bin路径下生成python3的软链接ln -s /usr/local/Python-3.7.0/python /usr/bin/python3 验证安装[root@cn-sz python]# python3 --version Python 3.7.0 [root@cn-sz python]# pip3 --version pip 22.1.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7)

find 命令的7种用法
type: item
date: 2022-05-09T14:41:00+00:00
description: 可以很肯定地说，find 命令是 Linux 后台开发人员必须熟知的操作之一，除非您使用的是 Windows Server。对于技术面试，它也是一个热门话题。让我们看一道真题：问题：如果你的 Linux 服务器上有一个名为 logs 的目录，如何删除该目录下最后一次访问时间超过一年的日志文件呢？答案：首先我们需要使用 cd 命令进入对应的目录，然后，命令如下：find . -type f -atime +365 -exec rm -rf {} \; 如果你还没有完全理解上面的命令，完全不用担心。本文将介绍 find 命令的 7 个实际用途，您最终会掌握它。如果您已经知道了，那么阅读这篇文章对您来说将是一个很好的回顾。按名称或正则表达式查找文件让我们从最简单的用法开始。要按特定名称搜索文件，命令如下：find . -name test.txt 如何查找所有格式为 pdf 的书籍？使用正则表达式：find ./yang/books -name "*.pdf" 默认情况下，find 命令会搜索常规文件，但最好进行指定（-type f）以使所有内容更清晰：find ./yang/books -type f -name "*.pdf" 查找不同类型的文件除了搜索常规文件外，我们还可以通过指定 -type 选项来搜索其他类型的文件。例如目录：find . -type d -name "yang*" 或者符号链接：find . -type l -name "yang*" 按指定的时间戳查找文件要按指定的时间戳搜索文件，我们需要知道 Linux 系统中的 3 个不同的时间戳：访问时间戳（atime）：最后一次读取文件的时间。修改时间戳（mtime）：文件内容最后一次被修改的时间。更改时间戳（ctime）：上次更改文件元数据的时间（如，所有权、位置、文件类型和权限设置）所以，正如开头提到的面试题，要搜索 atime 超过一年的文件，我们可以编写如下命令：find . -type f -atime +365 如果我们需要查找 mtime 正好是 5 天前的文件，请不要包含 +，因为它的意思是“大于”。find . -type f -mtime 5 显然，+ 表示“大于”，- 表示“小于”。所以我们可以搜索 ctime 在 5~10 天前的文件：find . -type f -ctime +5 -ctime -10 按大小查找文件-size 选项使我们能够按指定大小查找文件。我们可以将其计量单位指定为以下约定：b：512 字节块（默认）c：字节w：双字节字k：KBM：MBG：GB类似于按时间戳查找文件，+ 表示“大于”，- 表示“小于”。例如，要查找大小为 10 MB ~ 1 GB 的文件：find . -type f -size +10M -size -1G 按权限查找文件合理控制文件的权限是 Linux 管理员的一项重要任务。find 命令的 -perm 选项可以帮助我们按指定权限查找文件：find . -type f -perm 777 例如，上面的命令会搜索所有具有 777 权限的文件，这意味着一个文件对其持有者、组和所有用户具有所有的读、写和可执行权限。按所有权查找文件这个任务很简单。我们可以使用 -user 选项指定用户名。例如，以下命令将查找所有属于 yang 的文件：find -type f -user yang 在找到文件后执行命令在大多数情况下，我们希望在找到我们需要的文件后进行后续操作。例如将其删除，或检查它们的详细信息等等。-exec 命令使这些所有事情变得更加容易。现在，要了解如何使用它，让我们回到之前提到的面试问题：find . -type f -atime +365 -exec rm -rf {} \; 上述命令在 -exec 选项后是 rm -rf，其用于删除文件。{} 是用于查找结果的占位符。[scode type="yellow"]注意：占位符 {} 非常重要，尤其是在您想删除文件时。因为，如果您不使用它，该命令将对所有文件执行（而不是您刚刚通过 find 命令找到的文件）。[/scode]做一个尝试，请在终端上执行以下两个命令，并检查它们的结果有何不同：一个使用占位符：find . -type f -atime +5 -exec ls {} \; 另一个不使用：find . -type f -atime +5 -exec ls \; -exec 选项后面的命令必须以分号（;）结束。众所周知，转义字符用于去除单个字符的特殊含义。在 Linux 中，反斜杠 \ 用作转义字符。所以我们将它用于分号字符。

Vim分屏操作技巧
type: item
date: 2022-05-09T14:04:24+00:00
description: Vim分屏功能是通过分割窗口来实现的，这是提高工作效率的一大利器。无论我们想同时显示两个文件，或者同时显示一个文件的两个不同的位置，又或者并排比较两个文件，等等，这些都能通过分屏来实现，这样子很方便代码的比对和复制粘贴水平方向分屏打开新文件:sp 1.txt 或者:split 1.txt 这个命令把窗口横向切分为两个窗口，并把光标置于上面的窗口中。垂直方向分屏打开新文件:vsp 1.txt :vsplit 1.txt :sview linux.py ->只读分屏打开文件 另外，要打开窗口编辑一个新的文件时，可以用以下命令：:new 从命令行直接打开多个文件且是分屏vim -On file1, file2 ... ->垂直分屏 vim -on file1, file2 ... ->水平分屏 vim -O3 1.txt 2.txt 3.txt [scode type="blue"]注：-O垂直分屏，-o水平分屏，n表示分几个屏[/scode]实时调整当前窗口的宽度ctrl-w > //向右加宽，默认值为1ctrl-w N > //向右加宽宽度Nctrl-w < // 同理横屏/竖屏分屏打开当前文件ctrl+w sctrl+w v切换分屏ctrl+w h,j,k,lctrl+w 上下左右键crtl+w进行分屏窗口的切换 按完以后再按一个wcrtl+w进行分屏窗口的切换 按完以后再按一个r 互换窗口crtl+w进行分屏窗口的切换 按完以后再按一个c 关闭窗口关闭分屏关闭窗口有以下几个个命令：ctrl+W c 关闭当前窗口ctrl+w q 关闭当前窗口，若只有一个分屏且退出vim:only 仅保留当前分屏:hide 关闭当前分屏调整分屏的大小（宽度与高度）ctrl+w = 所有分屏都统一高度ctrl+w + 增加高度，默认值为1ctrl+w - 减少高度10 ctrl+w + 增加10行高度ctrl-w N + //当前屏高度加N使用指定当前屏的调整高度:resize 30 移动分屏：ctrl+W H,J,K,L将屏幕移动到最顶端：ctrl-w + K将屏幕移动到最低端：ctrl-w + J将屏幕移动到最左边：ctrl-w + H将屏幕移动到最右边：ctrl-w + L附上一个别人整理vim食用的思维导图

Linux常用查看系统硬件信息命令
type: item
date: 2022-04-26T12:59:00+00:00
description: 在 Linux 下，我们经常需要查看系统的硬件信息， 这里我罗列了查看系统硬件信息的实用命令，并做了分类，实例解说。[scode type="yellow"]由于我所使用的是腾讯云的云主机，所以会有很多参数没有，但您可以在真实的服务器上查询得到[/scode]CPUlscpu---查看的是 cpu 的统计信息[root@cn-sh ~]# lscpu Architecture: x86_64 CPU op-mode(s): 32-bit, 64-bit Byte Order: Little Endian CPU(s): 2 On-line CPU(s) list: 0,1 Thread(s) per core: 1 Core(s) per socket: 2 Socket(s): 1 NUMA node(s): 1 Vendor ID: GenuineIntel CPU family: 6 Model: 94 Model name: Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz Stepping: 3 CPU MHz: 2394.374 BogoMIPS: 4788.74 Hypervisor vendor: KVM Virtualization type: full L1d cache: 32K L1i cache: 32K L2 cache: 4096K L3 cache: 28160K NUMA node0 CPU(s): 0,1 Flags: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single fsgsbase bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx avx512f avx512dq rdseed adx smap clflushopt avx512cd avx512bw avx512vl xsaveopt xsavec xgetbv1 arat 查看/proc/cpuinfo,可以知道每个cpu信息，如每个CPU的型号，主频等[root@cn-sh ~]# cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 6 model : 94 model name : Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz stepping : 3 microcode : 0x1 cpu MHz : 2394.374 cache size : 28160 KB physical id : 0 siblings : 2 core id : 0 cpu cores : 2 apicid : 0 initial apicid : 0 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl eagerfpu pni pclmulqdq ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single fsgsbase bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx avx512f avx512dq rdseed adx smap clflushopt avx512cd avx5…

sysstat - Linux 性能监视工具
type: item
date: 2022-04-24T12:26:00+00:00
description: sysstat 工具简介SYSSTAT 是一个软件包，包含监测系统性能及效率的一组工具，这些工具对于我们收集系统性能数据，比如 CPU 使用率、硬盘和网络吞吐数据，这些数据的收集和分析，有利于我们判断系统是否正常运行，是提高系统运行效率、安全运行服务器的得力助手。sysstat 工具包中包含两类工具：即时查看工具：iostat、mpstat、sar累计统计工具：sar累计统计工具：sar为了实现sar的累计统计，系统必须周期地记录当时的信息，这是通过调用/usr/lib/sa/中的三个工具实现的：sa1 ：收集并存储每天系统动态信息到一个二进制的文件中，用作sadc的前端程序sa2 ：收集每天的系统活跃信息写入总结性的报告，用作sar的前端程序sadc ：系统动态数据收集工具，收集的数据被写入一个二进制的文件中，它被用作sar工具的后端在 CentOS 系统的默认设置中，以如下的方式使用这三个工具：在守护进程/etc/rc.d/init.d/sysstat中使用/usr/lib/sa/sadc -F -L命令创建当日记录文件，文件为/var/log/sa/saDD，其中DD为当天的日期。当系统重新启动后，会向文件/var/log/sa/saDD 输出类似11:37:16 AM LINUX RESTART这样的行信息。在 cron 任务/etc/cron.d/sysstat中每隔10分钟执行一次/usr/lib/sa/sa1 1 1命令，将信息写入文件/var/log/sa/saDD在 cron 任务/etc/cron.d/sysstat中每天23:53执行一次/usr/lib/sa/sa2 -A命令，将当天的汇总信息写入文件/var/log/sa/saDD您可以修改/etc/cron.d/sysstat以适合您的需要。另外，文件/var/log/sa/saDD为二进制文件，不能使用more、less等文本工具查看，必须用sar或sadf命令查看。在使用 Linux 系统时，常常会遇到各种各样的问题，比如系统容易死机或者运行速度突然变慢，这时我们常常猜测：是否硬盘空间不足，是否内存不足，是否 I/O 出现瓶颈，还是系统的核心参数出了问题？这时，我们应该考虑使用 sar 工具对系统做一个全面了解，分析系统的负载状况。sar（System Activity Reporter）是系统活动情况报告的缩写。sar工具将对系统当前的状态进行取样，然后通过计算数据和比例来表达系统的当前运行状态。它的特点是可以连续对系统取样，获得大量的取样数据；取样数据和分析的结果都可以存入文件，所需的负载很小。sar是目前Linux上最为全面的系统性能分析工具之一，可以从多方面对系统的活动进行报告，包括：文件的读写情况、系统调用的使用情况、磁盘I/O、CPU效率、内存使用状况、进程活动及IPC有关的活动等。为了提供不同的信息，sar提供了丰富的选项、因此使用较为复杂。Usage: sar [ options ] [ <interval> [ <count> ] ] Main options and reports: -b I/O and transfer rate statistics -B Paging statistics -d Block device statistics -F [ MOUNT ] Filesystems statistics -H Hugepages utilization statistics -I { <int> | SUM | ALL | XALL } Interrupts statistics -m { <keyword> [,...] | ALL } Power management statistics Keywords are: CPU CPU instantaneous clock frequency FAN Fans speed FREQ CPU average clock frequency IN Voltage inputs TEMP Devices temperature USB USB devices plugged into the system -n { <keyword> [,...] | ALL } Network statistics Keywords are: DEV Network interfaces EDEV Network interfaces (errors) NFS NFS client NFSD NFS server SOCK Sockets (v4) IP IP traffic (v4) EIP IP traffic (v4) (errors) ICMP ICMP traffic…

远程工具的天花板
type: item
date: 2022-02-21T08:13:00+00:00
description: FinalShell 简介：之前小编使用的一直都是Xshell + Xftp的组合方式来远程连接管理Linux系统的，而远程连接Windows的话则是用Windows自带的远程连接工具mstsc.exe，后来发现了FinalShell这款软件，个人觉得真是远程工具的天花板啊，用Java编写的一个程序，将Xshell 、ftp同屏显示，既可以输入命令，也可以传输数据，还能以树的形式展示文件路径，与此同时他不仅能远程Linux还可以远程Windows桌面，三合一大礼包，还免费，简直是国人之幸啊FinalShell 下载地址：Windows版下载地址：http://www.hostbuf.com/downloads/finalshell_install.exeMacOS版下载地址：http://www.hostbuf.com/downloads/finalshell_install.pkgLinux版下载地址：http://www.hostbuf.com/downloads/finalshell_install_linux.sh版本更新日志：http://www.hostbuf.com/t/989.htmlMac版安装路径：/Applications/FinalShell.app/配置文件路径：/Users/$USER/Library/FinalShell/Mac版卸载：删除安装目录/Applications/FinalShell.app/Linux版安装路径：/usr/lib/FinalShell/配置文件路径：/home/$USER/.finalshell/Linux版卸载：删除安装目录/usr/lib/FinalShell/FinalShell 特点：多平台支持Windows,macOS,Linux多标签,批量服务器管理.支持登录ssh和Windows远程桌面.漂亮的平滑字体显示,内置100多个配色方案.终端,sftp同屏显示,同步切换目录.命令自动提示,智能匹配,输入更快捷,方便.sftp支持,通过各种优化技术,加载更快,切换,打开目录无需等待.服务器网络,性能实时监控,无需安装服务器插件.内置海外服务器加速,加速远程桌面和ssh连接,操作流畅无卡顿.内存,Cpu性能监控,Ping延迟丢包,Trace路由监控.实时硬盘监控.进程管理器.快捷命令面板,可同时显示数十个命令.内置文本编辑器,支持语法高亮,代码折叠,搜索,替换.ssh和远程桌面均支持代理服务器.打包传输,自动压缩解压.支持rz,sz (zmodem)多地点ping监控命令输入框,支持自动补全,命令历史自定义命令参数功能,可动态根据输入参数生成命令可设置终端背景图片,并拥有动态背景模糊,文字阴影效果.一键查看各种系统信息FinalShell 界面展示：查看系统消息进程管理器主机检测,Ping监控,Trace实时跟踪高级网络监控,监控每个进程监听的端口,以及网络连接状态.打包传输,自动压缩解压,适合传输大量文件,文件夹和文本文件.升级高级版/专业版/开通云端同步虽说免费，但是吧，有些功能还是要付费的，但是小编觉得免费的已经够用了，如果还需要更高级的功能可以自行选择，高级版/专业版永久有效,开通同步服务前须先升级到高级版或专业版.云端同步介绍云端同步可在不同设备间同步各种配置信息,内容包括主机连接配置,代理服务器,秘钥,命令历史,文件路径历史,快捷命令,命令参数历史.同步过程自动完成,间隔30秒尝试同步一次.安全性:数据在本机使用同步密码加密后才会上传到同步服务器,没有同步密码,任何一方都无法获得同步内容.同步密码只在本机加密保存.加密算法采用AES256,HMAC-SHA256,以及多重加密混淆,避免破解泄露风险.高级版功能介绍高级版功能主要靠调用系统自带命令实现,无需额外安装软件,不会对系统进行改动,支持大部分常见系统.当前高级版功能:网络监控可选择接口,同时监控多个网络接口速度.打包传输,自动压缩解压,适合传输大量文件,文件夹和文本文件.高级网络监控,监控每个进程监听的端口,以及网络连接状态.高级进程管理,详细显示进程信息.无限制的终端命令历史,路径历史,可快速输入命令,切换路径.专业版功能介绍高级版功能主要靠调用系统自带命令实现,无需额外安装软件,不会对系统进行改动,支持大部分常见系统.当前专业版功能:所有高级版功能设置任意本机图片为终端背景升级永久高级版+一年同步服务 推荐79元 购买链接: www.hostbuf.com/manage/pay_gjsyncpack1.jsp升级永久高级版(无同步):35元 购买链接: www.hostbuf.com/manage/pay_advanced.jsp升级永久专业版+一年同步服务 推荐168元 购买链接: www.…

正则那些事
type: item
date: 2022-01-28T17:46:00+00:00
description: 正则是啥子玩意？正则表达式，又称规则表达式。（英语：Regular Expression，在代码中常简写为regex、regexp或RE），计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式（规则）的文本。许多程序设计语言都支持利用正则表达式进行字符串操作。例如，在Perl中就内建了一个功能强大的正则表达式引擎。正则表达式这个概念最初是由Unix中的工具软件（例如sed和grep）普及开的。正则表达式通常缩写成“regex”，单数有regexp、regex，复数有regexps、regexes、regexen。中文名正则表达式代码简写regex、regexp或RE外文名Regular Expression行业归属计算机科学别名规则表达式作用用来检索、替换那些符合某个模式(规则)的文本简单点用自己的话来说就是用来匹配一些有规律的东西，如手机号码、身份证号码、日志信息等，使用一些符号表达重复出现的大小写、开头/结尾的含义等，用途极其广泛如linux的三剑客、开发语言（python、Golang....）等正则那些事使用正则是需要注意所有的符号都应该是英文符号，注意系统的字符集：en_US.UTF-8（大部分情况90%都没有问题），如果出现问题修改字符集为·C export LANG=C·即可快速掌握正则：配合grep -o参数学习正则 和 通配符的区别正则：用于三剑客，高级语言，进行过滤作用支持的命令：grep,sed,awk,find,rename,expr---vs---通配符（pathname extension 或 glob）：匹配文件（文件名） .txt .log {01..10}支持的命令：Linux下面的大部分命令都支持规则使用基础正则： ^ $ . * .* [] [^]^以...开头的行.任意一个字符\转义字符,\n \t$以...结尾的行*前一个字符连续（重复）出现0次或0次以上[]一个整体，匹配任意一个字符^$空行.*所有内容[^]取反,排除^ 以...开头的行[root@cn-sz ~]# grep '^My' mingo.txt My blog is https://if010.com My QQ is 2324829677 My god , i am not mingo,but genius mingo! $ 以...结尾[root@cn-sz ~]# grep '448$' mingo.txt Not 4900000448 ^$ 空行[scode type="yellow"]空行是指这一行中没有任何内容，要注意的是空格也是个字符，一般用于排除空行 和 排除#号注释行[/scode][root@cn-sz ~]# grep -nv '^$' mingo.txt //-v 代表排除； -n 代表显示行号 1:I am genius mingo! 2:I like study linux. 3:I like badminton ball , billiard ball and chinese chess! 4:My blog is https://if010.com 6:Our size is https://blog.if010.com 7:My QQ is 2324829677 8:Not 4900000448 9:My god , i am not mingo,but genius mingo! . 表示任意一个字符[scode type="yellow"]注意点是不匹配空行，也就是说排除掉空行[/scode][root@cn-sz ~]# grep -n '.' mingo.txt 1:I am genius mingo! 2:I like study linux. 3:I like badminton ball , billiard ball and chinese chess! 4:My blog is https://if010.com 6:Our size is https://blog.if010.com 7:My QQ is 2324829677 8:Not 4900000448 9:My god , i am not mingo,but genius mingo! \ 转义字符 脱掉马甲打回原形，去除原有特殊含义#匹配出文件中以点结尾的行 [root@cn-sz ~]# grep -n '\.$' mingo.txt 2:I like study linux. 特殊的转义字符序列\n 回车换行\t tab键* 前一个字符连续出现0次或0次以上[root@cn-sz ~]# grep '0*' mingo.txt I am genius mingo! I like st…