小编Spa*_*sle的帖子

netcat:发送文本到回显服务,阅读回复然后退出

我想使用netcat向我服务器上的回显服务发送一段文本,获得回复然后退出,以便我知道连接仍然良好。到目前为止,我已经尝试过:

 echo 'test' | netcat server 7 
Run Code Online (Sandbox Code Playgroud)

这样 netcat 将等待更多输入而不是退出。

netcat从 echo 服务获得回复后如何退出?

echo netcat

14
推荐指数
4
解决办法
8万
查看次数

立即打印存档文件列表(无需解压整个存档)

.tar.gz档案的一个问题是,当我尝试只列出档案的内容时,计算机实际上会对其进行解压缩,如果文件很大,这将需要很长时间。

其他文件格式,如.7z, .rar,.zip没有这个问题。列出它们的内容只需一瞬间。

在我天真的看来,这是.tar.gz存档格式的一个巨大缺点。

所以我实际上有两个问题:

  1. .tar.gz尽管有这个缺点,为什么人们使用这么多?
  2. 如果我想要“即时内容列表”功能,我有哪些选择(我的意思是其他软件或工具)?

tar archive compression gzip

12
推荐指数
1
解决办法
5606
查看次数

PID 未运行时,/proc/PID 是否仍然存在?

/proc/4587即使没有具有 PID 4587 的进程,是否可能存在类似文件夹?

linux process proc

12
推荐指数
1
解决办法
2524
查看次数

限制查找命令的匹配数

如果我想在找到一定数量的匹配项后停止 find 命令,我该怎么做?

背景是我在一个文件夹中有太多文件,我需要将它们随机放入单独的文件夹中,例如:

find -max-matches 1000 -exec mv {} /path/to/collection1 \+; 
find -max-matches 1000 -exec mv {} /path/to/collection2 \+; 
Run Code Online (Sandbox Code Playgroud)

这可以find单独做吗?如果不是,那么最简单的方法是什么?

find

11
推荐指数
3
解决办法
2886
查看次数

杀死一组具有负 PID 的进程

kill -TERM -PID 
Run Code Online (Sandbox Code Playgroud)

应该杀死PID及其所有子进程。
但这在 openSUSE 上不起作用,它总是告诉我没有这样的进程 -PID,无论我使用什么 PID。
因此,如果此特定版本的 kill 不支持负 PID 选项,那么杀死一组进程的最佳方法是什么?

背景:
我有一个 shell 脚本正在运行。在脚本中,我使用 wget 下载东西。所以脚本是父进程,wget 是子进程。我想使用 kill -TERM -PID_OF_SCRIPT 杀死它们

process kill process-groups

7
推荐指数
2
解决办法
2万
查看次数

如何使用 xmodmap 交换 ctrl 和 capslock?

我知道这个 xmodmap 脚本可以交换 ctrl 和 capslock:

remove Lock = Caps_Lock
remove Control = Control_L
keysym Caps_Lock = Control_L
keysym Control_L = Caps_Lock
add Lock = Caps_Lock
add Control = Control_L
Run Code Online (Sandbox Code Playgroud)

我不太明白。所以我试过这个:

remove Lock = Caps_Lock
remove Control = Control_L
add Lock = Control_L
add Control = Caps_Lock
Run Code Online (Sandbox Code Playgroud)

而这个脚本不起作用。
有人可以用简单的语言解释这一点(为什么第一个脚本有效而另一个无效)?

x11 xmodmap keyboard-layout

7
推荐指数
1
解决办法
2万
查看次数

如何判断 wget 是否正在下载文件?

我习惯wget在晚上自动下载文件(大多数是 zip 文件)。

然而,有时早上我发现有几个文件无法解压。我不知道为什么会发生这种情况,也许是远程服务器出了问题。

我想编写一个脚本来使用“unzip -t”定期测试下载文件夹中的 zip 文件,但我不想测试正在下载的文件。那么我如何判断文件是否正在被使用wget呢?

zip wget lsof

5
推荐指数
1
解决办法
1756
查看次数

GNU 屏幕锁定,如何解锁?

所以这就是发生的事情:

  • 我用普通用户 ssh 到服务器
  • 我跑 sudo -i
  • 我运行屏幕

然后我不小心锁定了屏幕会话。要解锁它,它要求输入 root 的密码而不是普通用户的密码。问题是我不知道root的密码。在这种情况下我能做什么?

linux gnu-screen

5
推荐指数
1
解决办法
9156
查看次数