我刚刚看了一段幽默的 TikTok 视频,一位创作者正在回顾他们的“2024 年的记忆”,这些记忆就是内存条。
它们显示的是空的 RAM 条,只是 PCB,只有很少的通孔,没有用于缺失内存模块的焊盘,因此它们不是简单的未填充的 PCB。键控也不一致,因为它们似乎针对 DDR3 和 DDR4 都进行了键控(?):
它们是什么?有何用途?
如果我的 C 程序使用套接字、绑定到localhost:9025
、交换一些数据、被手动杀死并重新启动,它有时会崩溃并出现以下错误:
地址已在使用中。
我试图寻找“使用端口的 pid”的所有 SE 推荐软件都未能返回任何进程 ID,因此我假设当时没有使用端口的进程,9025
应该是这种情况。
尽管如此,从我从对类似问题的评论中收集到的信息来看,在我看来,当且仅当进程使用该特定地址时,“地址”才“已在使用”。那为什么这是假的呢?
现在我假设操作系统会跟踪正在使用的地址和未使用的地址,但情况是这样吗?如果是这样,我会很高兴你能告诉我如何纠正它,因为我对这个问题的最佳解决方案是“等待一段不确定的时间”。
编辑:我使用 Linux 5.2.2-arch1-1-ARCH x86_64
我正在使用 Notepad++,我正在尝试找到一种可以在同一行上搜索多个值的方法。正则表达式搜索目前对我不起作用,因为我可能不知道值的顺序。
例如,我想搜索一行具有三个特定值的代码。在正则表达式搜索中使用.*
不起作用,因为您必须知道值的顺序。我是否可以在不知道值顺序的情况下搜索这些行?
在每一行上,我可能都有一个交易日志,其中包含 30 个不同的标签。我想搜索35=D, EUR/USD, 150=8
. 我只想搜索所有三个值都存在的条目。
我遇到的问题是无法保证这些标签的顺序,因此我在下面使用的正则表达式搜索并不总能找到我需要的每个条目。
35=D.*EUR/USD.*150=8
我不小心输入r
了 shell,得到的似乎是我运行的最后一个命令的重复。
man zshbuiltins
,无助地,这样说:
r
- 一样fc -e -
。
的文档fc
几乎难以理解,但我设法梳理了这些引述:
fc [ -e
ename
] [ -LI ] [ -m
match
] [
old=new
... ] [
first
[
last
] ]
编辑器程序ename在包含这些历史事件的文件上调用....编辑完成后,将执行编辑的命令。
如果ename是
-
,则不调用任何编辑器。
这对我来说就像 的行为r
类似于感叹号!
,因为它重播了历史。确实,如果我setopt banghist
重新打开 bang,诸如r man
和之类! man
的东西似乎都会重播我对 man 的最后一次呼叫。
r
和之间有什么异同!
?我可以使用的假设场景是什么r
?
我的中有以下通用主机配置.ssh/ssh_config
:
Host *
ConnectTimeout 5
ServerAliveInterval 5
ServerAliveCountMax 12
我也有一些特定的配置。例如以下别名:
Host work-server-1
Hostname a.b.c.d
Host work-server-2
Hostname i.j.k.l
现在,我的问题是:登录主机时work-server-1
,SSH 是否也会使用条目中定义的ConnectTimeout
,ServerAliveInterval
和设置?ServerAliveCountMax
Host *
我知道这是一个相当基本的问题,但我正在努力寻找在线资源来澄清它。
据我了解,在 NAT 中,将专用网络连接到公共互联网的路由器有一个 IP 地址,专用网络的所有流量都指向该地址;然后路由器使用端口号来确定流量是针对专用网络上的哪个设备。相比之下,使用 DHCP 时,网络上的每个设备都被分配了自己的公共 IP 地址,它的流量被定向到该地址。
我的困惑源于听说两者可以同时使用,这似乎与使用 NAT 的想法相矛盾,整个专用网络只有一个 IP 地址,而使用 DHCP,网络上的每个设备都有一个 IP 地址。如果它们是互斥的,那么它们通常在哪里使用?
如果您认为这会有所帮助,请随时撕开上述陈述:)。
编辑:下面的答案解释得非常好——我很愚蠢,没有意识到 DHCP 可以分配任何“类型”的 IP 地址,它只是设备加入网络的协议?
我在 VirtualBox(版本 6.0.6)上有一个虚拟机,来宾系统 CentOS 7,主机系统 Windows 10。安装了扩展包。图形控制器是 VBoxVGA。
我按照此处的步骤安装 VirtualBox Guest Additions(未显示错误)并重新启动。
在 CentOS 上:
> systemctl -t service | grep vbox
VBoxadd-service.service loaded active running VBoxadd-service.service
(这意味着来宾添加正在运行)。“自动调整访客显示大小”仍然是灰色的。
关于当前内核:
> sudo uname -r
3.10.0-957.12.2.e17.x86_64
请注意,在同一台主机上,Fedora 30 虚拟机和 Ubuntu 14.04 虚拟机“自动调整大小”正常工作。
更新:仍然发生在 VirtualBox 6.0.8(也更新了扩展包和来宾添加)。
有什么提示吗?我缺少什么?
我有一组 .png 图像,我想在 macOS 上使用 ffmpeg 将它们制作成电影动画,但是当我查看制作的视频时,质量总是被压缩并且生成的视频有伪影,而原始图像没有。这是视频中的图像以及原始图像的同一部分。我尝试使用 crf = 0 的 h.264 编解码器进行编码,但在运行 ffmpeg 时出现奇怪的错误:
为输出文件 #0 (test.mp4) 指定的编解码器 AVOption crf(选择恒定质量模式的质量)尚未用于任何流。最可能的原因是类型错误(例如,没有视频流的视频选项)或者它是某些编码器的私有选项,实际上并未用于任何流。
我使用以下 ffmpeg 命令来生成它:
ffmpeg -f image2 -r 10 -i image%05d.png -vcodec h264 -crf 0 -y test.mp4
一种可能性是它被禁用(请参阅下面的完整控制台输出),但这对我来说没有意义,因为当我列出带有ffmpeg -codecs
as的 ffmpeg 编解码器时它确实出现了
DEV.LS h264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 (encoders: h264_videotoolbox )
这是完整的控制台输入/输出:
ffmpeg -f image2 -r 10 -i image%05d.png -vcodec h264 -crf 0 -y test.mp4
ffmpeg version 4.0 Copyright (c) 2000-2018 the FFmpeg developers
built with clang version 4.0.1 (tags/RELEASE_401/final)
configuration: --prefix=/Users/user/anaconda3 --cc=x86_64-apple-darwin13.4.0-clang --disable-doc --enable-shared --enable-static --enable-zlib --enable-pic --enable-gpl --enable-version3 --disable-nonfree --enable-hardcoded-tables --enable-avresample --enable-libfreetype --disable-openssl --disable-gnutls --enable-libvpx --enable-pthreads --enable-libopus --enable-postproc --disable-libx264
libavutil 56. 14.100 / 56. 14.100
libavcodec 58. 18.100 / 58. 18.100
libavformat 58. 12.100 / 58. 12.100
libavdevice 58. 3.100 / 58. 3.100
libavfilter 7. 16.100 / 7. 16.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 1.100 / 5. 1.100
libswresample 3. 1.100 / 3. 1.100
libpostproc 55. 1.100 / 55. 1.100
Input #0, image2, from 'image%05d.png':
Duration: 00:00:25.00, start: 0.000000, bitrate: N/A
Stream #0:0: Video: png, rgba(pc), 1382x1036 [SAR 2834:2834 DAR 691:518], 10 fps, 10 tbr, 10 tbn, 10 tbc
Codec AVOption crf (Select the quality for constant quality mode) specified for output file #0 (test.mp4) has not been used for any stream. The most likely reason is either wrong type (e.g. a video option with no video streams) or that it is a private option of some encoder which was not actually used for any stream.
Stream mapping:
Stream #0:0 -> #0:0 (png (native) -> h264 (h264_videotoolbox))
Press [q] to stop, [?] for help
GVA info: Successfully connected to the Intel plugin, offline Gen95
[h264_videotoolbox @ 0x7fc150018600] Color range not set for yuv420p. Using MPEG range.
Output #0, mp4, to 'test.mp4':
Metadata:
encoder : Lavf58.12.100
Stream #0:0: Video: h264 (h264_videotoolbox) (avc1 / 0x31637661), yuv420p, 1382x1036 [SAR 1:1 DAR 691:518], q=2-31, 200 kb/s, 10 fps, 10240 tbn, 10 tbc
Metadata:
encoder : Lavc58.18.100 h264_videotoolbox
frame= 82 fps=0.0 q=-0.0 size= 0kB time=00:00:07.70 bitrate= 0.0kbits/frame= 196 fps=195 q=-0.0 size= 256kB time=00:00:19.10 bitrate= 109.8kbits/frame= 250 fps=198 q=-0.0 Lsize= 616kB time=00:00:24.90 bitrate= 202.5kbits/s speed=19.7x
video:614kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.305027%
解决方案:
显然--disable-libx264
我的问题实际上是标签。显然有必要从 conda-forge 安装 ffmpeg 而不是标准的 anaconda 以便能够编码 x264 视频。