小编Wor*_*lle的帖子

对长行使用 grep 来获取该行的一部分

我想搜索一个长句子(超过 1024 个字母)。

我有一个文本文件 ( test.txt),其中有一个长句子,如下所示:

afdafglwqgkjrldjl;ewqje;'k;g;je;;;fdsgalsdkf;akslg;safdas.....dasfsd
Run Code Online (Sandbox Code Playgroud)

现在我想检查哪一行包含单词saf。该命令仅显示整个句子:

less test.txt | grep saf
Run Code Online (Sandbox Code Playgroud)

是否可以获取句子的一部分或者我应该使用除 之外的命令grep

grep

9
推荐指数
1
解决办法
3011
查看次数

gcc 没有找到头文件,尽管它的路径已经包含在 -I 中

我正在尝试通过 安装模块 ( Package::Stash::XS) cpanm,但由于 gcc 错误导致安装失败。命令:

gcc -c    -DPERL_USE_SAFE_PUTENV -U__STRICT_ANSI__ -fno-strict-aliasing -pipe -fstack-protector -DUSEIMPORTLIB -O3    -DVERSION=\"0.28\"  -DXS_VERSION=\"0.28\"  "-I/usr/lib/perl5/5.14/x86_64-cygwin-threads/CORE"   XS.c
Run Code Online (Sandbox Code Playgroud)

失败并出现错误:

XS.xs:1:20: fatal error: EXTERN.h: No such file or directory
compilation terminated.
Run Code Online (Sandbox Code Playgroud)

在线:

#line 1 "XS.xs"
#include "EXTERN.h"
Run Code Online (Sandbox Code Playgroud)

但是,该文件EXTERN.h确实存在于-I包含的/usr/lib/perl5/5.14/x86_64-cygwin-threads/CORE:

$ ls /usr/lib/perl5/5.14/x86_64-cygwin-threads/CORE/E*
/usr/lib/perl5/5.14/x86_64-cygwin-threads/CORE/EXTERN.h
Run Code Online (Sandbox Code Playgroud)

可能是什么问题,我怎样才能使编译成功?我试过更改-I-iquote(尽管 gcc 手册确实说双引号包括最终也使用 -I),但这无济于事。我的第一个想法是这是一个权限问题,但这是 Cygwin 并且 cpanm 像我一样运行,我确实EXTERN.h对 CORE 目录具有读取访问权限和 exec 访问权限。

cygwin perl gcc cpan

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

无法删除字体文件

我的桌面上有 3 个字体文件,我暂时放置在那里以对它们进行一些测试。我使用手提箱融合“临时”安装了它们。

从那以后,我无法从我的计算机中删除这些字体。手提箱 Fusion 显示它们未激活,并且我没有打开任何程序(重新启动后),但我无法删除这些文件。

控制面板字体窗口中,这些字体上显示有一个快捷箭头符号(这是什么意思?)。我使用Nirsoft的“打开文件查看器”查看它们是否打开并显示它们是打开的,并且该进程显示为“系统进程”

我还尝试从控制面板中删除它们。它要求确认删除,所以我确认,但它实际上并没有删除。

我该怎么做才能删除这些字体文件?我使用的是 Windows 10 Pro 64 位。

fonts file-permissions windows-10

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

${$} 在 PowerShell 中是什么意思/做什么?

在学习 PowerShell 时,我${$}错误地执行了命令并得到如下输出:

PS C:\Users\myuser> Get-ChildItem Env: | Out-File -FilePath $home\env.txt
PS C:\Users\myuser> ${$}
$home\env.txt
Run Code Online (Sandbox Code Playgroud)

首先,我认为它类似于$_,但这样${$_}做的行为并不相同。

根据我尝试过的其他示例,它似乎从上一个命令中检索了最后一个参数,但我不太确定它是如何工作的或它实际在做什么。

我希望得到解释或指向文档/解释的链接。

PowerShell 主机信息(如果需要):

名称:ConsoleHost
版本:5.1.17134.858
InstanceId:[删除,因为我不小心,如果可以不小心共享]
UI:System.Management.Automation.Internal.Host.InternalHostUserInterface
CurrentCulture:en-US
CurrentUICulture:en-US
PrivateData:Microsoft。 PowerShell.ConsoleHost+ConsoleColorProxy
DebuggerEnabled : True
IsRunspacePushed : False
Runspace : System.Management.Automation.Runspaces.LocalRunspace

powershell powershell-5.0

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

OneDrive 有 .gitignore 吗?

我对我的 Vim 临时文件“无法与 OneDrive 同步”感到非常恼火。我宁愿它使用正则表达式或其他东西一起忽略它们,但我不知道该怎么做。

regex onedrive windows-10

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

注册表:Shell 打开命令 - 打开多个程序

我试图通过注册表注册一个shell打开命令,并想打开多个程序,所以我这样试过:

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\myFile\Shell\Open\Command]
@="cmd /k calc & notepad & exit"
Run Code Online (Sandbox Code Playgroud)

calc并且notepad只是一个例子来证明它。

如果我这样使用它,计算器和记事本都打开了,但命令提示符仍然打开,直到我关闭记事本。如果我将其更改为cmd /k calc & calc & exit,则会得到 2 个计算器实例,并且命令提示符会根据需要关闭。

为什么它不能与记事本一起使用?

有人知道另一种在注册表中使用 shell open 命令启动多个程序而不让命令提示符保持打开状态的方法吗?

windows windows-registry shell command-line cmd.exe

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

使用 ssh,“-A”标志有什么作用?

一位同事最近说,“-A如果你想加载你的私钥,你可以使用标志登录服务器。” 我点点头,好像我知道他们在说什么,然后偷偷溜到谷歌上。

看起来几乎就像使用 -Awill 神奇地允许您在没有凭据的情况下登录。手册页:

启用身份验证代理连接的转发。这也可以在配置文件中针对每个主机进行指定。

应谨慎启用代理转发。能够绕过远程主机上的文件权限(对于代理的 UNIX 域套接字)的用户可以通过转发的连接访问本地代理。攻击者无法从代理获取密钥材料,但是他们可以对密钥执行操作,使他们能够使用加载到代理中的身份进行身份验证。

有 6 个描述词,然后是一段深奥的警告。

什么是-A标志做,它是如何工作的,以及如何使用它?

ssh

5
推荐指数
2
解决办法
2578
查看次数

从 Chrome 打印时不显示更多设置选项

我打算在 Google Chrome 上将网页另存为 PDF,但“更多设置”选项未显示,如下所示。

在此输入图像描述

当更改为另一台打印机时,将显示“更多设置”选项。

在此输入图像描述

为什么选择“另存为 PDF”时不显示“更多设置”选项?我怎样才能解决这个问题?

pdf google-chrome printing

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

Win 10:当与网络驱动器的连接断开时禁用“恢复网络连接”弹出窗口

错误信息图片

每当我与网络驱动器断开连接并且我碰巧打开了 10 个网络驱动器文件夹时,就会显示其中 10 个弹出窗口,除非我在每个弹出窗口上手动单击“确定”,否则我无法关闭任何窗口。我可以以某种方式禁用此错误消息吗?

networking connection windows-10

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

启用麦克风时蓝牙耳机将音频静音

耳机型号

\n

Sony WH-1000-XM2(使用 Jabra Elite 75t 进行测试,症状相同)

\n

蓝牙接收器

\n

Ubit-AX200 802.11AX WiFi 6使用此处找到的驱动程序

\n

声卡

\n

该主板的板载卡是技嘉 B550M DS3H,驱动程序来自这里(Realtek HD Audio Driver (Note) Win10 ver.2004supported. -- [6\xe2\x80\x8e.0.8945.1] -- 2\ xe2\x80\x8e020/05/08)

\n

操作系统

\n

Windows 10 专业版 2004

\n

症状

\n

我可以像平常一样配对设备,没有任何问题。配对后,通过 Spotify 等播放音频可以正常工作,玩游戏大部分也可以正常工作(Apex Legends 根本没有音频 - 不确定这是否相关),除非我启用麦克风。如果启用麦克风,所有声音都会停止(Spotify、游戏等)。

\n

我的简单测试用例是在 Spotify 上播放一些音乐,然后打开声音设置(右键单击声音图标)。这是我所看到的:

\n

声音设置

\n

我认为点击Device properties and test microphone. 在下一个屏幕上,如果我单击,Start test我可以看到麦克风接收输入,但所有音乐都停止播放。它不会暂停音乐,Spotify 会继续播放正在播放的歌曲,只是音频输出停止。耳机里没有声音。

\n

这种情况发生在网络游戏中。如果我启用麦克风,游戏音频也会停止。

\n

回到声音设置屏幕,如果我将输入切换到其他任何内容,只要禁用麦克风或选择不同的麦克风,音频就可以。

\n

在通过控制面板找到的声音设置中,我看到:

\n

控制面板声音

\n

如图所示,如果将耳机条目设置为默认设备,则会出现上述所有症状。如果我将默认设备切换为耳机,一切都会开始按预期工作(音频和麦克风同时工作)。问题是耳机设备仅限于1 channel, …

audio microphone bluetooth drivers windows-10

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