标签: gnu

Bash 命令在 x 行数后切断输出

我正在寻找一个 bash 命令,我可以用它来限制文件或其他命令输出的行数。例如

ls -thor | limit 10
Run Code Online (Sandbox Code Playgroud)

会将 ls 命令的输出限制为 10 行(在示例中,命令“limit”自然是一个虚构的命令,我正在寻找它的等效命令)。有没有这样的命令,或者相关的解决方案?

linux bash gnu

37
推荐指数
1
解决办法
4万
查看次数

基于 Debian 的系统中的 LANG 和 LANGUAGE 环境变量

似乎某些程序使用 LANG 和 LANGUAGE 环境变量来确定其用户界面语言。

这些变量的确切语义是什么,我可以在哪里阅读它们的正确用法?locale(1) 的联机帮助页只提到了 LC_* 系列的环境变量。此外,还有一个常见的 LC_ALL 变量,那里也没有描述。

linux debian locale gnu environment-variables

30
推荐指数
3
解决办法
3万
查看次数

从装甲 gpg 公钥文件中获取信息

当给定一个带有装甲公共 GnuPG 密钥的文件时,即使用以下方式pubkey.gpg创建的文件 ( ):

gpg -r 0xDEADBEEF --export --armored > pubkey.gpg
Run Code Online (Sandbox Code Playgroud)

在不将其导入我的钥匙圈的情况下,获取该文件中的指纹等信息的最佳方法是什么?

到目前为止我发现的最好的方法(我不满意)是:

gpg --dry-run --import pubkey.gpg
Run Code Online (Sandbox Code Playgroud)

当然,我搜索了 gpg 手册页,但没有找到明显的解决方案。

linux gnu gnupg

22
推荐指数
3
解决办法
9057
查看次数

如何在less中进行多行搜索?

在 中less,您能否使用/包含回车符和换行符的模式进行搜索?我知道您的模式可以使用一行结束$(来自How do I include newlines in a search in less?),但我需要该模式来匹配跨越多行的文本。

我试过\n,但只搜索n字符。

gnu less

22
推荐指数
2
解决办法
5411
查看次数

为什么有些 Linux 程序的输出既不去 STDOUT 也不去 STDERR?

为什么有些 Linux 程序的输出既不去 STDOUT 也不去 STDERR?

实际上,我想知道如何可靠地捕获所有程序输出,无论它使用什么“流”。我的问题是有些程序似乎不让他们的输出被捕获。

一个例子是“时间”命令:

time sleep 1 2>&1 > /dev/null

real        0m1.003s
user        0m0.000s
sys         0m0.000s
Run Code Online (Sandbox Code Playgroud)

或者

time sleep 1 &> /dev/null

real        0m1.003s
user        0m0.000s
sys         0m0.000s
Run Code Online (Sandbox Code Playgroud)

为什么我两次都看到输出?我希望这一切都通过管道输入/dev/null

时间使用的是什么输出流,我如何将其通过管道传输到文件中?

解决此问题的一种方法是创建一个Bash脚本,例如,combine.sh包含以下命令:

$@ 2>&1
Run Code Online (Sandbox Code Playgroud)

然后可以以正确的方式捕获 'time' 的输出:

combine.sh time sleep 1 &> /dev/null
Run Code Online (Sandbox Code Playgroud)

(没有看到输出 - 正确)

有没有办法在不使用单独的组合脚本的情况下实现我想要的?

linux bash gnu stderr stdout

22
推荐指数
2
解决办法
7075
查看次数

GNU 屏幕:使用鼠标在拆分窗口中更改焦点

有没有办法在 GNU 屏幕中启用适当的鼠标支持,以便我可以使用鼠标在拆分窗口之间切换焦点?

换句话说,我正在寻找一种鼠标驱动的替代方法来输入“Ca Tab”。

谢谢,

linux mouse gnu gnu-screen

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

如何结合 find 和 grep 进行复杂的搜索?( GNU/linux, 查找, grep )

我试图在一些共享类似目录结构但不在同一目录树中的文件中进行文本搜索,在 GNU/Linux 中。

我有一个 Web 服务器,其中有许多站点共享相同的树结构(Code Igniter MVC PHP 框架),所以我想在树下的特定目录中搜​​索每个站点,例如:

/srv/www/*/htdocs/system/application/

其中 * 是站点名称。从这些应用程序目录中,我想搜索所有树直到它的叶子,寻找一个 *.php 文件,里面有一些文本模式,假设“调试(”,不需要正则表达式。

我知道如何使用findgrep但我不擅长将它们结合起来。

我该怎么做?
提前致谢!

linux grep gnu command-line find

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

UnxUtils 和 GnuWin32 的区别?

我是一个 Windows 用户,他希望在我的命令提示符中使用 grep 和 sed 等程序以及 ls、cut 等其他实用程序。我遇到了 2 个可以完成此任务的软件包

在我选择它们之前,我想知道两者在功能方面和更重要的性能方面有什么区别。从我所见,GnuWin32 是 UnxUtils 的超级集。这样对吗 ?

Barlop 指出,
这个问题是关于 coreutils 和 unxutils,但由于他在谈论 grep 和 sed,很明显他想询问 gnuwin32 和 unxutils,这是一个比错误的问题更有用和重要的问题。如果人们想将其恢复为 coreutils 和 unxutils,那么我很乐意这样做并为 gnuwin32 和 unxutils 发布另一个问题。此外,对他的原始问题的任何正确答案都将纠正或回答他的错误,但也能回答他的意思。所以纠正他的问题没有损失。

gnu command-line gnuwin32

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

如何获取实际目录大小(超出du)?

如何使用 UNIX/Linux 标准工具获取实际目录大小?

替代问题:如何让du向我显示实际目录大小(而不是磁盘使用情况)?

由于人们似乎对术语“大小”有不同的定义:我对“目录大小”的定义是该目录中所有常规文件的总和。

我不关心目录 inode 的大小或文件在相应文件系统上占用的任何大小(块 * 块大小)。一个包含 3 个文件的目录,每个文件 1 个字节,目录大小为 3 个字节(根据我的定义)。

使用 du 计算目录大小似乎不可靠。
例如,mkdir foo && du -b foo报告“4096 foo”,4096 字节而不是 0 字节。对于非常大的目录,报告的目录大小du -hs可能会减少 100 GB (!) 甚至更多(压缩文件系统)。

那么必须使用什么(工具/选项)来获取实际目录大小?

linux unix gnu inode du

20
推荐指数
3
解决办法
3万
查看次数

使 GNU 屏幕在重启后存活

我经常使用 GNU 屏幕。我觉得很烦人,每次必须重新启动服务器时,我都会丢失所有会话(即使我事先知道,我也需要重新设置所有内容)。

我在网上搜索了如何让屏幕在重启后幸存下来的可能性,但没有找到适合我的方法。我发现的一些方法存在缺陷:

  • CryoPID:似乎已经死了,自 2005 年起承诺支持屏幕
  • DMCTP:setuid() 有问题,对我不起作用(我承认我没有很努力地尝试)
  • 一些试图从头开始重新创建会话的脚本;你仍然失去了你的历史,我认为环境变量也没有正确设置(当我尝试时它没有显示所有会话)

也许有人知道一些更好的过程冷冻机?这似乎是最有希望的方式。

reboot gnu gnu-screen

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