小编Lon*_*biz的帖子

对一个参数运行两个命令(无脚本)

如何在一个输入上执行两个命令,而无需两次输入该输入?

例如, stat 命令告诉了很多关于文件的信息,但没有指明它的文件类型:

stat fileName
Run Code Online (Sandbox Code Playgroud)

文件命令,告诉什么类型的文件是:

file fileName
Run Code Online (Sandbox Code Playgroud)

您可以通过以下方式在一行中执行此操作:

stat fileName ; file fileName
Run Code Online (Sandbox Code Playgroud)

但是,您必须键入文件名两次。

如何在同一个输入上执行两个命令(无需两次输入输入或输入变量)?

在 Linux 中,我知道如何通过管道传输输出,但是如何通过管道传输输入呢?

command-line

28
推荐指数
4
解决办法
9663
查看次数

根 Cron 不会运行脚本(权限被拒绝)

我已经编辑了我的根 cron 选项卡,以使用以下命令定期执行位于特定用户文件夹中的脚本:

sudo crontab -e
Run Code Online (Sandbox Code Playgroud)

当 cron 运行脚本时,这是输出:

sh: 1: /home/user/Location/Of/Script: Permission denied
Run Code Online (Sandbox Code Playgroud)

我认为根 cron 有权做任何事情。当我以 root 用户身份手动运行此脚本时,我没有任何问题。

我在文档中读到可以在此处找到更多错误信息:

sudo cat /var/log/syslog
Run Code Online (Sandbox Code Playgroud)

这是我发现的:

Jan 30 12:30:01 backup CRON[17702]: (CRON) info (No MTA installed, discarding output)
Run Code Online (Sandbox Code Playgroud)

但是,我认为这可能与权限被拒绝问题无关。

那么我真正需要做什么呢?

cron ubuntu permissions

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

列出所有网络打印机(包括未安装的)

使用此命令可以轻松列出已安装的打印机:

lpstat -a
Run Code Online (Sandbox Code Playgroud)

但是,这不会列出您尚未安装的网络打印机。

nmap 将扫描 LAN 上所有打开的端口,但生成的列表不会仅限于网络打印机:

sudo nmap -sT 192.168.0.1-254
Run Code Online (Sandbox Code Playgroud)

是否有执行以下操作的命令:

  1. 自动检测您当前连接的 LAN。
  2. 扫描整个 LAN,专门寻找网络打印机。
  3. 生成提供其主机名和 IP 地址的网络打印机列表。

例如,我今天登录了 Imagistics fx2100 打印机的 Web 界面。它具有“查找设备”功能,能够查找 LAN 上的所有网络打印机(请参见下面的屏幕截图)。似乎在 Linux 中会有一个命令可以实现相同的列表和信息(无需脚本):

在此处输入图片说明

command-line hardware printing printer

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

ncdu - 按文件计数而不是大小排名

我喜欢ncdu的导航和功能,但我不想按大小对文件夹进行排名,而是想按文件计数对它们进行排名。例如,首先列出包含更多文件的文件夹,您可以使用箭头键导航层次结构。

有什么选择可以实现这一点吗?如果没有,我想知道修改源代码以提供我想要的功能会有多困难。也许已经有其他东西可以做到这一点了?

debian disk-usage inode files ncdu

8
推荐指数
1
解决办法
1365
查看次数

增加 KDE 中的系统托盘图标大小

如何增加这些系统托盘图标的大小?:

在此输入图像描述

更新:在 Debian 11、KDE ​​Plasma 5.20.5 中,现在有一个选项可以将系统托盘图标缩放到面板的高度。这是一个简短的视频,展示了这一点。感谢 KDE!

kde icons kubuntu tray plasma5

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

显示点击,但无法切换

我的笔记本电脑上的触摸板设计很差,因为它没有缩进外壳中以避免我的鱼际和小鱼际无意中点击。

在Ubuntu 19.10,使用相同的笔记本电脑,我可以切换关“点按单击”,如图所示这里

但是,在 Kubuntu 20.04 中,此选项变灰(禁用),并且无法切换:

在此处输入图片说明

考虑到 GUI 不提供切换此设置的功能,还有其他方法可以禁用“点击即点击”吗?

kde touchpad plasma5

6
推荐指数
2
解决办法
3831
查看次数

在 Firefox 中监控选项卡的 CPU%

有时,当我在 Firefox 中打开多个标签时,其中一个标签会开始消耗大量 CPU%,我想知道哪个标签是罪魁祸首。这样做是一个非常手动的过程,我想找到自动化。

我希望我有一个应用程序,它可以只生成我想知道的 firefox-facts 的简洁输出的方式来专门监视 firefox。

我正在寻找一个命令/应用程序,它将列出在 Firefox 中运行的每个选项卡的进程,过滤后只包含每个选项卡进程的以下信息:

  1. 进程标识
  2. 标签页地址
  3. CPU使用率
  4. 已用内存

另外,我想要按 CPU % 降序排序的信息。

基本上,我希望有一个像 htop 这样的程序,但它专门用于我想在 Firefox 中监控的相关内容(同时忽略我不关心的所有细节)。

linux ubuntu monitoring firefox

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

systemd-shutdown[1]:无法完成 DM 设备,忽略

每次我重新启动运行 Kubuntu 20.04 的笔记本电脑时,我都会在它不情愿地重新启动之前看到这条消息:

systemd-shutdown[1]: Failed to finalize  DM devices, ignoring
Run Code Online (Sandbox Code Playgroud)

此外,在显示此消息时,重新启动所需的时间比应有的时间长。

我发现很多人都在问这个问题,但我还没有读到一个可靠的答案。

此消息的真正含义是什么,我该如何解决此“失败”问题?目标是在我启动重启时没有不必要的延迟。

lvm devices systemd kubuntu reboot

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

虚拟机管理器 - Windows 10 VM 不断进入暂停状态

我的 Windows 10 虚拟机一直处于某种Paused状态。我曾多次尝试对其进行一些较小的 Windows 更新,但每次我尝试时,更新大约 5 或 10 分钟后,虚拟机就会暂停,此后您无法取消暂停。

例如,今天早上,我在上午 7:35:20 准时启动了虚拟机。上午 7:41,虚拟机进入暂停状态,这是冻结位置的屏幕截图:

在此输入图像描述

虚拟硬盘有足够的可用空间,我分配了8 GB的 RAM。所以,我不明白为什么它一直暂停。

我使用Virtual Machine Manager创建了这个虚拟机。

我不知道是什么导致了这个问题。为什么具有充足 RAM 和磁盘空间的虚拟机在前几分钟运行良好后会自动暂停?

kvm virtual-machine

3
推荐指数
1
解决办法
3190
查看次数

Autokey - 如果正在运行则聚焦应用程序窗口,如果没有则启动应用程序

pcmanfm我正在尝试获取这样的processID :

pgrep -f "pcmanfm"
Run Code Online (Sandbox Code Playgroud)

pcmanfm不运行时,上面的命令不会返回任何内容(正如我所期望的那样)。

但是,当我从 python 运行命令时,即使pcmanfm未运行,它也会返回进程 ID:

processID = os.system('pgrep -f "pcmanfm"')
Run Code Online (Sandbox Code Playgroud)

此外,如果您在 python3 提示符下多次运行上述命令,它每次都会返回不同的 processID。一直以来,pcmanfm在这些命令之前已经关闭。

>>> processID = os.system('pgrep -f "pcmanfm"')
17412
>>> processID = os.system('pgrep -f "pcmanfm"')
17414
>>> processID = os.system('pgrep -f "pcmanfm"')
17416
Run Code Online (Sandbox Code Playgroud)

pcmanfm如果它当前没有运行,这确实会扰乱我的启动能力。我的脚本认为它正在运行,但实际上它没有运行。

为什么会发生这种情况?

实际上,我在尝试根据我观看的视频编写的自动键脚本中遇到了这个问题。这是我当前的脚本:

processID = system.exec_command('pgrep -f "pcmanfm" | head -1',True)
dialog.info_dialog("info",processID)

if (processID):
    cmd = "wmctrl -lp | grep " + processID + " | awk '{print $1}'" …
Run Code Online (Sandbox Code Playgroud)

bash process-management python3 pgrep autokey

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