Linux命令行与shell脚本
文章平均质量分 54
A
Lightning-py
这个作者很懒,什么都没留下…
展开
-
Linux环境创建普通用户,授权root权限。报错:usermod: group ‘sudo‘ does not exist
执行以下命令,将username替换为你刚才创建的用户名。然而,在某些Linux发行版(比如基于Red Hat的系统,如CentOS、Fedora等)中,确实存在一个名为。2. 执行以下命令创建一个新的用户,其中username为你想要创建的用户名,可根据实际情况自行更改。如果你正在使用基于Debian或Ubuntu的系统,并且想要允许一个用户使用。3. 设置该用户的密码,执行以下命令,并按照提示输入两次密码。但是,如果你需要进一步的配置或自定义权限,你可以编辑。的组,并且该组的成员可以使用。原创 2024-05-06 17:07:37 · 366 阅读 · 0 评论 -
Linux普通用户,上传文件为何必须选择普通用户所在目录
这是出于安全性考虑的一种限制,目的是确保用户无法随意修改系统文件或其他用户的文件。当一个普通用户登录时,其当前工作目录通常是其家目录,因此上传文件时会默认保存到当前工作目录,即普通用户所在目录。如果想要上传文件到其他目录,需要确保该目录对应的权限允许该用户进行写操作,否则会受到权限拒绝的错误。在 Linux 中,超级用户(root 用户)可以在系统的任何目录进行写操作,因为超级用户拥有最高权限。但对于普通用户来说,上传文件必须选择普通用户所在目录或有相应权限的目录进行操作,以遵守文件系统权限的规则。原创 2024-03-19 11:37:17 · 196 阅读 · 0 评论 -
Linux命令grep -A 9999 “指定字符串“ 文件名 | sed -n ‘/指定字符串/,$p‘ > 新文件名。查找包含指定字符串的行,并将该行之后的内容保存到另一个文件中
这个命令的作用是先用`grep`找到包含指定字符串的行以及其后的所有内容(`-A 9999`表示匹配行及其后的最大行数),然后通过`sed`命令进行进一步处理,只输出从匹配行到末尾的内容,并将其保存到新文件中。要在Linux中查找包含指定字符串的行,并将该行之后的内容保存到另一个文件中,你可以使用`grep`命令结合`-A`选项和`sed`命令来实现。grep -A 9999 "指定字符串" example.txt | sed -n '/指定字符串/,$p' > output.txt。原创 2024-03-12 15:25:33 · 164 阅读 · 0 评论 -
Linux命令 执行后再输入 y, 或 password 等多个参数 的组合命令
echo "password")` 创建一个子 shell,在其中依次执行 `echo "y"` 和 `echo "password"`,将它们的输出合并起来。要在执行 Linux 命令后输入多个参数,比如 "y"、密码等,您可以结合使用 `echo`、`printf`、Here Document、管道和重定向等技巧来实现。如果需要输入多个参数,只需在命令序列中添加相应的 `echo` 或 `printf` 命令即可。- `echo "y"` 用于输出 "y"。原创 2024-03-08 09:40:10 · 159 阅读 · 0 评论 -
Linux命令:重复多次后台运行且不保存输出,查看命令对应的进程数量
在这个示例中,`your_command` 是你想要重复运行的命令。`> /dev/null 2>&1` 部分用于将命令的标准输出和标准错误输出重定向到 `/dev/null`,即丢弃输出,从而不保存命令的输出。要查看与该命令对应的进程数量,你可以使用 `pgrep` 命令来查找匹配进程的数量。要在后台重复运行 Linux 命令并查看对应的进程数量,你可以使用循环结构和后台运行符号 `&` 结合起来。通过执行上述循环,你可以将 `your_command` 命令重复运行 3 次,并且不保存输出。原创 2024-02-21 15:01:15 · 459 阅读 · 0 评论 -
Linux命令:pkill 强制终止进程
`-signal`:指定要发送给匹配进程的信号。请注意,`pkill` 命令是一种强制终止进程的方式,它会直接发送信号给匹配的进程,因此请谨慎使用,以免造成数据丢失或系统不稳定。`pkill` 是一个用于终止进程的 Linux 命令。它通过进程的名称或其他属性来查找并结束匹配的进程。- `-f`:强制匹配整个命令行,而不仅仅是进程的名称。其中,`pattern` 是用于匹配进程的模式。- `-u user`:限制匹配的进程为指定用户所属的进程。- `-e`:精确匹配整个命令行,而不考虑模式中的大小写。原创 2024-02-21 13:52:10 · 427 阅读 · 0 评论 -
Linux 系统安装Allure
可以从 Allure 的官方 GitHub 仓库(https://github.com/allure-framework/allure2/releases)下载适用于 Linux 的二进制压缩包(`allure-[version].tgz`)。现在,您已经在 Linux 系统上成功进行了离线安装 Allure 命令行工具。可以使用 `allure --help` 命令查看帮助信息,并按照之前提到的步骤生成和查看 Allure 报告。1. 在具有互联网连接的计算机上下载 Allure 的二进制压缩包。原创 2024-02-04 16:06:14 · 705 阅读 · 0 评论 -
Linux环境nload实时监控网络流量工具
在界面上,可以看到当前网卡的入站和出站流量,以及一些其他的信息,如网络连接状态和平均速度等。安装nload: 要在Linux上安装nload,可以使用包管理器,如apt、yum或dnf。常用参数和使用方法: nload是一个用于监测网络流量的命令行工具,提供了多种参数来定制和控制它的行为。它能够显示网卡的入站和出站流量,帮助用户了解当前网络的使用情况。以上是nload的一些常用参数和使用方法的示例。总之,nload是一个非常实用的网络流量监控工具,可以帮助用户了解网络使用情况,并及时发现网络问题。原创 2024-01-23 16:43:06 · 407 阅读 · 0 评论 -
Linux命令挂载硬盘
`UUID=8fae68fa-e4aa-4ed1-bc2d-7f75381fc4a1 /boot xfs defaults` - 这一行指定了/boot文件系统的挂载点,使用的是UUID标识符为`8fae68fa-e4aa-4ed1-bc2d-7f75381fc4a1`的设备,文件系统类型是xfs,挂载选项为默认选项。8. `mount /dev/sda1 /hdd-data/` - 将/dev/sda1分区挂载到/hdd-data目录下,使分区中的数据可以通过该目录访问。原创 2024-01-16 14:30:11 · 663 阅读 · 0 评论 -
CentOS系统安装并启动VNC服务
其中,"LISTEN"表示连接处于监听状态,"127.0.0.1:22"表示本地IP地址和端口号,"0.0.0.0:80"表示任意IP地址和端口号,"sshd/1234-sshd"和"nginx/5678-nginx"表示与连接关联的进程的名称和进程ID。例如,输出可能类似于"N 5",其中"N"代表先前的运行级别,"5"代表当前的运行级别。使用"vncserver -list"命令可以方便地了解当前运行的VNC服务器会话的状态和标识,并在需要的时候采取进一步的操作,比如连接到指定的会话或关闭会话。原创 2024-01-16 14:20:38 · 1407 阅读 · 0 评论 -
centos系统设置runlevel为5
请注意,随着CentOS 7和8的发布,systemd已经成为了默认的初始化系统,而不再使用SysV init方式。不过,systemd target的用法和runlevel类似,也是表示系统的不同模式或状态。5. 将 `3` 修改为 `5`,即将 `id:3:initdefault:` 改为 `id:5:initdefault:`。在 vi 编辑器中,按下 `Esc` 键,然后输入 `:wq`,再按下 `Enter` 键。请注意,修改运行级别可能会影响系统的行为和服务的启动方式,请谨慎操作。原创 2024-01-16 11:38:38 · 878 阅读 · 0 评论 -
CenOS系统软件依赖包安装常见命令
https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm 是要安装的软件包的URL。在这个命令中,我们将会使用yum来安装这个URL所指向的epel-release-latest-7.noarch.rpm软件包。这个命令的含义是使用sudo权限运行yum命令,通过指定软件包的名称来安装一系列的软件包。这个命令的含义是使用sudo权限运行yum命令,通过指定URL安装一个特定的软件包。接下来是一系列要安装的软件包的名称。原创 2024-01-13 11:35:01 · 391 阅读 · 0 评论 -
hostnamectl命令使用方法
它可以用于查看、设置和修改主机名、静态主机名和图标名称。总结起来,hostnamectl命令可以帮助我们管理系统的主机名和相关信息,从而方便我们识别和管理不同的计算机。命令,它将显示有关系统的详细信息,包括操作系统名称、内核版本、架构等。这将设置系统的静态主机名为"new_static_hostname"。命令来设置新的主机名。设置静态主机名:静态主机名是系统启动时的主机名。命令,它将显示当前主机名及相关信息,如静态主机名。这将为系统设置一个新的图标名称。命令来设置新的静态主机名。命令来设置新的图标名称。原创 2024-01-13 10:04:24 · 792 阅读 · 0 评论 -
Linux命令输出txt文件每一行内容长度并将内容长度不等于指定值的数据重定向到文件
执行以上命令后,将会输出txt文件中每一行的内容长度。要输出txt文件中每一行的内容长度,可以使用。将内容长度不等于指定值的数据重定向到文件。表示打印每一行的内容长度。原创 2024-01-10 11:41:06 · 558 阅读 · 0 评论 -
Linux服务器查看管理口IP地址、网关、网关的MAC地址
当网关收到目标主机的ARP响应时,会从中解析出目标主机的MAC地址,并将其与目标主机的IP地址关联起来,并在自己的ARP缓存表中进行记录。之后,当需要将数据转发到目标主机时,网关会根据目标主机的IP地址查询自己的ARP缓存表,获取目标主机的MAC地址,然后使用该MAC地址进行数据转发。当目标主机回复ARP响应时,网关会将该响应发送回源主机,同时将目标主机的MAC地址添加到自己的ARP缓存表中。数据封装:网关将接收到的数据包根据目标网络的协议封装,并将其发送到下一跳网关或目标设备。原创 2024-01-03 16:20:38 · 2224 阅读 · 0 评论 -
Python 判断subprocess.Popen()函数返回结果error信息是否为None
【代码】Python 判断subprocess.Popen()函数返回结果error信息是否为None。原创 2023-12-29 15:29:00 · 438 阅读 · 0 评论 -
Python subprocess.Popen() 函数启动多个进程,再发送SIGINT终止信号
执行命令后,它将实时打印文件的最后5行,并在文件发生变化时持续更新输出。如果你需要在命令执行过程中实时获取输出结果,可以使用。抱歉,我之前的回答中给出了一个在Python 3.7及以上版本中可用的参数。要在Linux命令中查看文件的最后5行并自动退出,可以使用。命令,以便将结果打印到终端,并在打印完最后5行后自动退出。要查看文件的最后5行而不是实时监控文件变化,可以使用。这段代码的功能是进行一系列的子进程操作,并在最后发送。,但是它在较早的Python版本中并不可用。的最后5行,并在打印完后自动退出。原创 2023-12-29 15:22:56 · 542 阅读 · 0 评论 -
Linux命令:wc -l计算文件中的行数
命令计算行数时,会将文件中的每一行都计算为一行。因此,如果文件中有空行或只包含空格的行,也会被计算为一行。命令将计算每个文件中的行数,并将每个文件的行数和文件名显示在一起。是一个Linux命令,用于计算文件中的行数。命令将从标准输入读取数据,并计算行数。如果指定一个或多个文件名作为参数,则。命令查看完整的选项列表和详细说明。命令还可以与其他选项一起使用,如。使用管道将命令的输出传递给。如果不指定文件名,则。原创 2023-12-29 13:57:51 · 1671 阅读 · 1 评论 -
Linux命令的输出结果作为另一个命令的输入
这些例子给出了如何将一个命令的输出结果作为另一个命令的输入。可以根据具体的需求使用适当的方法。)将一个命令的输出结果作为另一个命令的输入。命令列出的当前目录中的文件名逐行作为。在Linux命令中,可以使用管道(命令列出的当前目录中的文件名传递给。原创 2023-12-19 14:03:44 · 816 阅读 · 0 评论 -
Linux命令:pidof <程序名>线程程序进程id
命令:用于通过进程的名称或其他属性查找进程ID。命令可以显示所有进程的详细信息,包括进程ID。命令:用于查找正在运行的程序的进程ID。命令:用于显示当前运行进程的快照。替换为要查找的程序的名称或关键字。注意:在上述命令中,将。原创 2023-12-18 15:47:31 · 582 阅读 · 0 评论 -
Linux命令lsblk查看系统中所有的磁盘及详细信息
lsblk是一个用于列出块设备信息的Linux命令。它能够显示系统中所有的磁盘、分区以及其它块设备的详细信息。lsblk命令的常用语法如下: lsblk [选项] [设备]原创 2023-12-18 13:48:53 · 1135 阅读 · 0 评论 -
Linux命令dmidecode查看主板型号
是一个工具,它能够读取系统的 DMI(Desktop Management Interface)信息,包括主板型号、BIOS 版本、CPU 信息等。Handle 0x0050 - 0x005C:表示主板上的一些集成设备的信息,如内置网卡、声卡、SATA控制器等。命令需要在具有 root 权限或者以具有 sudo 权限的用户下运行,以获取完整的系统信息。通过以上输出可以看到主板的制造商、型号、版本和一些集成设备的信息。上述命令会显示主板的详细信息,其中包括型号、制造商、序列号等。命令获得的主板信息。原创 2023-12-13 13:32:59 · 1284 阅读 · 0 评论 -
ssh无密码自动登录实现原理
例如,当两个人需要进行加密通信时,他们可以使用对方的公钥来加密信息,只有对方才能使用自己的私钥进行解密。非对称加密算法的实现原理是根据数学运算中的大数质因数分解、离散对数等难题,使得通过公钥加密的密文只能通过相应的私钥进行解密。非对称加密算法(也被称为公钥密码算法)是一种加密技术,它使用两个密钥来进行加密和解密操作,其中一个密钥被称为公钥(公开),另一个密钥被称为私钥(保密)。RSA算法:是非对称加密算法中的一种,采用公钥和私钥对数据进行加密和解密,应用场景主要是数字签名、身份认证、电子邮件加密等。原创 2023-12-12 10:18:34 · 331 阅读 · 0 评论 -
Linux命令:cut命令、tr命令 处理文本
如果想选择所有的列,可以使用-f-选项。指定多个范围:使用-c选项后跟多个字符范围,用逗号隔开,例如:cut -c 1-5,10-12 表示提取每行的前5个字符和第10到12个字符。使用“-”代表所有字符:使用-c选项后跟“-”表示需要提取所有的字符,例如:cut -c - 表示提取所有行的所有字符。指定单个字符:使用-c选项后跟所需提取的字符位置即可,例如:cut -c 1 表示提取每行的第一个字符。指定范围:使用-c选项后跟所需提取的字符范围,例如:cut -c 1-5 表示提取每行的前5个字符。原创 2023-12-11 10:16:57 · 38 阅读 · 0 评论 -
Python查找以txt结尾的最后修改的文件的绝对路径
函数只能返回给定路径的绝对路径,并不会检查路径是否存在或者路径是否是文件还是目录。是 Python 中 os.path 模块提供的一个函数,用于返回给定路径的绝对路径。glob 模块是 Python 内置的一个文件查找模块,用于搜索符合特定规则的文件路径。参数表示需要获取绝对路径的文件路径,可以是相对路径或绝对路径。是一个将目录下的文件列表进行处理,返回最新修改的文件的绝对路径的命令。参数表示需要搜索的文件路径,可以是相对路径或绝对路径。文件的绝对路径,具体输出内容取决于该文件在计算机中的位置。原创 2023-12-08 15:49:46 · 294 阅读 · 0 评论 -
Linux watch命令监视命令输出
watch命令支持组合参数的使用,例如组合使用-n和-d参数,可以实时监控并比较命令的输出。这样就可以实时监控chrome进程的CPU使用情况,并比较前后两次输出的差异了。该参数用于去掉watch命令自身的输出,只显示待监控命令的输出。该参数用于比较前后两次输出的差异,并用不同颜色的文本标示出来。该参数用于指定刷新输出的时间间隔,单位为秒,默认为2秒。该参数用于显示帮助信息。原创 2023-12-08 11:10:24 · 317 阅读 · 0 评论 -
ssh免密远程登录主机并执行命令
这是因为在您第一次使用SSH客户端连接到远程主机时,您可能会看到一条消息,“是否要将此主机的公钥添加到已知主机列表中?如果您同意将公钥添加到已知主机列表中,则 SSH 将在本地计算机上创建一个匹配该主机的记录,并使用该记录验证未来的连接。在将公钥添加到已知主机列表后,SSH 客户端会自动使用与该主机关联的私钥进行身份验证,从而无需再次输入密码。因此,在您第二次或随后的连接尝试中,SSH 客户端会直接使用已知主机列表中的私钥进行身份验证,并免去了重新输入密码的步骤。目录,并列出该目录中的所有文件和子目录。原创 2023-12-06 18:29:46 · 392 阅读 · 0 评论 -
Linux命令截取文件1-6699079行内容并存储到文件
其中,-n表示输出结果带有行号。这条命令将会输出文件中从第1行到第6699079行的所有内容,并将其重定向到一个新的文件中。以上两条命令都可以实现截取文件1-6699079行内容并存储到文件中的功能,你可以根据具体需求选择使用。可以使用grep命令来查看字符串所在的行数。表示截取文件头部的6699079行内容,这样就可以显示出包含该字符串的行号了。表示将结果重定向到一个新的文件中。表示需要截取的行数范围,表示从结果中去掉第一行,原创 2023-12-06 11:31:51 · 156 阅读 · 0 评论 -
Linux命令lscpu显示CPU相关信息
在NUMA系统中,CPU和内存被组织成多个节点,每个节点包含一组处理器和一定数量的内存。每个节点可以访问本地内存和远程内存(其它节点的内存),但访问本地内存的速度要比访问远程内存的速度快。在NUMA系统中,每个节点都有自己的CPU和内存,节点之间通过高速互联网络连接。lscpu命令给出的NUMA node(s)参数表示系统中的NUMA节点数目,这对于了解系统的内存架构和性能优化非常有用。lscpu命令的输出结果包括CPU架构、型号、时钟速度、缓存信息、CPU数量、核心数、支持的操作模式等,非常详细。原创 2023-11-29 18:12:46 · 369 阅读 · 0 评论 -
Linux命令压缩文件:tar.gz, zip, gzip
其中,-c表示创建压缩文件,-z表示使用gzip压缩算法,-v表示显示压缩过程,-f表示指定压缩文件名。其中,-z表示使用gzip压缩算法,-c表示创建压缩文件,-v表示显示压缩过程,-f表示指定压缩文件名。压缩:tar -czvf filename.tar.gz foldername。压缩:tar -zcvf filename.tar.gz foldername。解压:tar -xzvf filename.tar.gz。解压:tar -zxvf filename.tar.gz。原创 2023-11-29 17:41:14 · 136 阅读 · 0 评论 -
Linux命令:统计文件中指定字符串不重复的内容及其数量
注意,在这个例子中,由于单词有大写和小写的区别,因此输出结果中包含了不同大小写形式的相同单词。如果要区分大小写,则需在。则是用来统计每个不重复的字符串出现的次数,并附加在该字符串前面输出。其中,每行的第一列是该字符串出现的次数,第二列是该字符串本身。是用来提取每行的第一个单词,即匹配到的字符串。是用来查找文件中包含特定字符串的所有行。命令能正确地统计重复行的数量。则是用来排序,以便后续的。原创 2023-11-27 16:42:14 · 174 阅读 · 0 评论 -
Linux命令:挂载远程的NFS共享文件系统到本地
如果需要开机自动挂载,可以编辑/etc/fstab文件,添加相应的挂载信息。执行该命令后,会列出当前系统中所有的挂载点及其对应的文件系统信息,包括挂载点、挂载的文件系统类型、挂载选项等。执行该命令后,NFS共享文件系统上的文件和目录将会被挂载到本地的/share目录下,可以在本地对其进行访问、读写等操作。例如命令:/bin/mount -t nfs -o rw IP:/hdd_data/share /share。该命令是挂载一台远程的NFS共享文件系统到本地的/share目录。原创 2023-11-27 11:34:07 · 358 阅读 · 0 评论 -
Linux 环境删除Conda
这将安装anaconda-clean程序,该程序可以轻松地卸载conda。现在,您已经成功地从centos系统中删除了Conda。首先,停止所有conda环境。这将提示您输入“yes”以确认卸载conda。应该是您在第2步中获取的conda安装路径。文件中删除conda路径。接下来,卸载conda。一旦卸载完成,您需要从。原创 2023-11-17 11:32:05 · 3312 阅读 · 0 评论 -
~/.bashrc配置文件说明
在这个文件中,你可以定义别名(Aliases)、函数(functions)、环境变量等,以帮助你更高效地使用命令行。例如,你可以通过写入命令的别名来使用更短或替代名称的引用命令,这对经常使用终端来执行特定命令的用户来说可以大大节省时间并提高效率。每次修改~/.bashrc后,使用source ~/.bashrc(或者 . ~/.bashrc)就可以立刻加载修改后的设置,使之生效。~/.bashrc 是bash shell的配置文件,它位于当前用户的家目录中(~)。命令别名,以便您可以顺利使用该命令。原创 2023-11-17 11:05:35 · 1616 阅读 · 0 评论 -
sudo -s含义
使用sudo -s命令后,您将被提示输入当前用户的密码以获得特权访问。一旦授权,您将进入一个新的shell会话,该会话将在shell提示符中显示root用户的身份。通过使用sudo命令,用户可以在获得特权、修改配置等需要root权限的任务时避免直接使用root用户。sudo -s命令的含义是切换到超级用户(root)并打开一个新的shell窗口。在此模式下,您可以执行需要root权限的任何命令,包括修改系统文件和设置等操作。要退出超级用户模式,请键入exit命令或按Ctrl + D组合键。原创 2023-11-17 09:55:49 · 1136 阅读 · 0 评论 -
Linux命令kill -2参数含义:当进程接收到SIGINT信号时,会尝试以一种优雅的方式终止进程,同时可以做一些清理工作
kill命令中的参数"2"代表的是SIGINT信号,也可以用对应的信号名"INT"代替。如果进程无法正常响应SIGINT信号,就可以使用kill命令发送SIGKILL信号来强制终止进程。kill命令中的参数"2"代表的是SIGINT信号,也可以用对应的信号名"INT"代替。因此,使用"kill -2 进程号"命令可以向指定进程发送SIGINT信号,让进程优雅地退出。因此,使用"kill -2 进程号"命令可以向指定进程发送SIGINT信号,让进程优雅地退出。原创 2023-11-09 19:47:19 · 518 阅读 · 0 评论 -
Linux命令:普通账号下启动定时任务而无需输入密码
要想在普通账号下启动定时任务而无需输入密码,可以通过visudo命令修改sudoers文件,添加免密码执行该命令的配置。要想在普通账号下启动定时任务而无需输入密码,可以通过visudo命令修改sudoers文件,添加免密码执行该命令的配置。之后,你在使用普通账号启动该定时任务时,就不需要输入密码了。之后,你在使用普通账号启动该定时任务时,就不需要输入密码了。注意,冒号后面的参数为要免密码执行的命令或脚本。注意,冒号后面的参数为要免密码执行的命令或脚本。清除缓存的sudo密码,再重新执行该定时任务。原创 2023-11-09 19:36:15 · 163 阅读 · 0 评论 -
shell脚本将执行结果重定向到指定路径指定文件对应的变量
问题在于你在定义变量时使用了空格,导致变量名被解析成了。执行报错# /bin/bash a.sh。在Shell中,变量名不能包含空格。原创 2023-11-08 16:08:05 · 388 阅读 · 0 评论 -
Linux命令查看pcap包报文数量、包体包含内容、包长
要查看pcap文件中的包数量,可以使用网络分析工具,如Wireshark或Tcpdump,或者使用编程语言中的网络分析库,如Python中的Scapy或Sniffy。原创 2023-11-08 14:45:09 · 1448 阅读 · 0 评论 -
tcpreplay命令后加上“--maxsleep=num“,num表示最大延迟时间(单位毫秒)
参数表示在重放数据包时,每个数据包之间的最大延迟时间为 num 毫秒。这意味着在重放数据包时,程序会在两个连续的数据包之间暂停一定的时间,以确保它们以适当的速度发送到网络中。这意味着在重放数据包时,程序会在两个连续的数据包之间暂停最多 100 毫秒的时间。这个参数的含义是控制在发送每个数据包之间的最大延迟时间,单位是毫秒。这个命令将会读取input.pcap文件中的数据包,并以最大间隔10毫秒的速度发送出去。较小的值会减少数据包之间的延迟时间,而较大的值则会增加延迟时间。原创 2023-11-07 16:07:02 · 290 阅读 · 0 评论