1. linux 怎么查看程序打开了那些文件,使用程序的 pid 查询
可以使用 lsof 命令来查看指定进程的打开文件列表,其中-P 参数用于显示进程 PID 而非进程名,例如:
lsof -P -p <pid>
其中,为目标进程的 PID。执行该命令后,会列出目标进程打开的所有文件、目录、管道等信息。
2. centos 给指定端口打开防火墙,例如 8899
在 CentOS 中,可以使用防火墙管理工具 firewall-cmd
来开启和关闭端口。在命令行中执行以下命令可以开启 8899 端口:
sudo firewall-cmd --zone=public --add-port=8899/tcp --permanent
解释一下这个命令:
sudo
:以管理员权限执行命令。firewall-cmd
:防火墙管理工具。--zone=public
:指定开启的端口所在的区域为public
,也可以是其他区域,例如home
、work
等。--add-port=8899/tcp
:添加 8899 端口,并指定传输协议为 TCP。--permanent
:将该规则永久性添加到防火墙中,重启系统后该规则仍然有效。
执行完上述命令后,需要重新加载防火墙规则,使其生效:
sudo firewall-cmd --reload
如果需要关闭该端口,可以使用以下命令:
sudo firewall-cmd --zone=public --remove-port=8899/tcp --permanent
sudo firewall-cmd --reload
以上命令中的 --remove-port
参数与 --add-port
参数使用方法类似,用于移除指定端口的防火墙规则。执行完该命令后,再次使用 --reload
参数重新加载防火墙规则即可。
3. 复制文件,并且强制覆盖
在 CentOS 系统中使用 cp 命令强制覆盖已存在的文件,可以使用-i 选项并设置其值为"yes",这样 cp 命令就会自动回答"yes",如下所示:
cp -i /home/a.txt /home/20230414/ <<< yes
或者使用 echo 命令将"yes"作为输入传递给 cp 命令,如下所示:
echo yes | cp -i /home/a.txt /home/20230414/
这两种方法都可以强制覆盖已存在的文件,而不需要手动输入"yes"。
如果想保留 a.txt 文件的属性,可以加上 -p,如下所示:
echo yes | cp -ip /home/a.txt /home/20230414/
专题
走进 Linux(一):VM VirtualBox 安装 Centos
走进 Linux(二):第三方工具连接 Centos
走进 Linux(三):常用 linux 命令
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于