有了 GNU find
,就可以很容易地通过管道传输xargs
。一个典型的(无用的)例子:
find /var/log -name "*.log" | xargs dirname
Run Code Online (Sandbox Code Playgroud)
这将返回包含某个日志文件的所有目录名称。
同样的命令在 BSD 中find
不起作用,结尾为:
usage: dirname path
Run Code Online (Sandbox Code Playgroud)
即xargs
无法将文件列表条目传递给dirname
.
BSDfind
的联机帮助页提到了-exec
和-execdir
选项,指出“此行为类似于 xargs(1)”。
-exec utility [argument ...] {} + 与 -exec 相同,但每次调用实用程序时,将“{}”替换为尽可能多的路径名。此行为与 xargs(1) 类似。
-execdir utility [argument ...] {} + 与 -execdir 相同,只是“{}”在每次调用实用程序时被替换为尽可能多的路径名。此行为与 xargs(1) 类似。
每次我依靠这两个标志时,我都必须再次阅读文档。我似乎记不起它们的用法了!另外,我还关心 GNU/BSD 系统(主要是 Linux、Open/FreeBSD 和 MacOS)之间的脚本可移植性。
有什么方法可以将 BSD 传输find
到xargs
,或者-exec
确实是唯一的选择?
我需要对齐这些div
s,以便div
"content1"和红色之间的空格等于"content4"和红色之间的空格div
.我不介意改变蓝色div
边缘,但这适用于任何宽度.
我曾经通过使4蓝色div
的宽度+左右边距= 100%来实现这一点,但在这种情况下似乎不能很好地工作.
我也尝试div
在红色的内部添加另一个包含所有蓝色div
的并给它margin: 0 auto
但是它也不起作用.
PS:如果我不够清楚,请随时编辑我的问题.
I'm trying to setup logbook
in a PyTest test to output everything to both stderr
and a file. The file should get every log level, but stderr
should have a higher threshold (which PyTest will manage with it's usual capture settings).
I've got the pytest-logbook
plugin. That redirects stderr
into PyTest capture, but I'm not sure how to add the file output.
This is (hopefully) obvious to someone that knows logbook, but it's new to me.
One more thing, I …
我正在生成一个m3u8
文件:
ffmpeg -i Sample2.avi \
-hls_init_time 1 \
-hls_time 10 \
-f hls \
-hls_list_size 0 \
-hls_segment_filename 'partial_file%04d.ts' \
-s 480x270 \
out.m3u8
Run Code Online (Sandbox Code Playgroud)
看来我使用时-hls_time 10
每个片段大约是 10 秒。但是,当我添加时,-hls_init_time 1
生成的所有片段的长度约为 1 秒。
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:6
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:2.035367,
partial_file0000.ts
#EXTINF:1.101100,
partial_file0001.ts
#EXTINF:5.372033,
partial_file0002.ts
#EXTINF:1.267933,
partial_file0003.ts
#EXTINF:2.802800,
partial_file0004.ts
#EXTINF:0.867533,
partial_file0005.ts
Run Code Online (Sandbox Code Playgroud)
我只希望第一段为1秒,其他段为10秒。
我浏览了这里的文档,我想我正在按照文档中提到的方式进行操作。
我缺少什么?
我有此功能,当我传递正确的用户名和密码时,它会起作用,当我故意传递错误的密码时,我会在Password:
提示时卡住 。
def perform(sensor_params)
@hostname = "10.0.10.100"
@username = "root"
@password = "root"
@cmd = "id"
begin
ssh = Net::SSH.start(@hostname, @username, :password => @password)
res = ssh.exec!(@cmd)
ssh.close
puts res
rescue
puts "Unable to connect to #{@hostname} using #{@username}/#{@password}"
end
end
Run Code Online (Sandbox Code Playgroud)
关于所传递的密码不正确时如何只显示“无法连接”消息的想法吗?
谢谢