我通常使用某种基于 Debian 的 Linux 发行版;Debian 7.8 或 Linux Mint 17。我有一个这样的拆分 RAR 文件:
filename.rar
filename.r01
filename.r02
filename.r03
etc ...
Run Code Online (Sandbox Code Playgroud)
使用dtrx或提取存档后unrar,我想删除拆分存档的所有部分文件,最好是一行。
目前我这样做rm filename.r*,通常效果很好,但是如果文件的名称与rabbid.ranger.robot.r01它类似,也可以删除提取的目录rabbid.ranger.robot。
所以我正在寻找更强大的东西。
也将接受一个简短的脚本。
我正在使用 Debian 8.0,例如想查找包含 1 个以上.mkv文件的目录。我试过这个,但失败了:
find -type d -exec find {} -name '*.mkv' | wc -l\;
Run Code Online (Sandbox Code Playgroud)
SuperUser 上有一个类似的问答,我无法适应。这对我也不起作用:
find . -maxdepth 1 -type d -exec bash -c "echo -ne '{} '; find '{}' -name '*.mkv' | wc -l" \; | awk '$NF>=2'
Run Code Online (Sandbox Code Playgroud)
错误消息指向一个语法错误:
bash: -c: line 0: syntax error near unexpected token `('
Run Code Online (Sandbox Code Playgroud)
这样做的原因是目录的名称是这样的:
Directory With Space and (Brackets)
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用在 Linux 专用服务器上运行的 ffmpeg 从 DTS-HD MA 轨道中提取 DTS 核心。
我试过了:
ffmpeg -i input.mkv -vn -sn c:a copy output.dts
Note switches -vn and -sn disable video and subtitle track copying respectively.
Run Code Online (Sandbox Code Playgroud)
这显然复制了整个 DTS 核心和 HD MA 轨道。
如果 ffmpeg 是错误的工具,请说明替代方案,最好是 Linux 友好的。
谢谢
我有一个文件,其中包含许多行格式:
bc("STG1/Phone") = {type=bana_pub; cbb=12.354; abb=0.0}`
Run Code Online (Sandbox Code Playgroud)
我正在寻找提取cbb=12.354;. 目前,我正在执行以下操作:
cat input_file.txt | grep cbb | awk -F " " '{ print $4 }'`
Run Code Online (Sandbox Code Playgroud)
问题是我的方法是特定于位置的,即假设它始终是第四个字段。cbb=在知道=它可以是任意长度并且分号是可选的之后,如何提取表单的文本;。我唯一的保证是,cbb=12.354;如果有帮助的话,该术语将被空格包围。将来的文件可能是以下格式:
bc("STG1/Phone") = {type=bana_pub; cbb=12.354; abb=0.0}
bc("STG1/Phone") = {type=bana_pub; abb=0.0; cbb=12.354}
Run Code Online (Sandbox Code Playgroud)
我的直觉告诉我,正则表达式可能是正确的选择,但如果可以的话,我通常会尽量避免使用它,因为我更喜欢简单的匹配工具(我对此了解得更好)。
感谢您的帮助。