将具有相同标题的不同值保存到不同的变量中(BASH)

Unnikrishnan

考虑这个输出

General
Complete name                            : sample.mp4
Format                                   : MPEG-4
Format profile                           : QuickTime
Codec ID                                 : qt  
File size                                : 37.3 MiB
Duration                                 : 9mn 56s
Overall bit rate mode                    : Variable
Overall bit rate                         : 525 Kbps
Writing application                      : Lavf52.73.0

Video
ID                                       : 1
Format                                   : AVC
Format/Info                              : Advanced Video Codec
Format profile                           : [email protected]
Format settings, CABAC                   : No
Format settings, ReFrames                : 3 frames
Codec ID                                 : avc1
Codec ID/Info                            : Advanced Video Coding
Duration                                 : 9mn 56s
Bit rate                                 : 400 Kbps
Width                                    : 424 pixels
Height                                   : 240 pixels
Display aspect ratio                     : 16:9
Frame rate mode                          : Constant
Frame rate                               : 24.000 fps
Color space                              : YUV
Chroma subsampling                       : 4:2:0
Bit depth                                : 8 bits
Scan type                                : Progressive
Bits/(Pixel*Frame)                       : 0.164
Stream size                              : 29.9 MiB (80%)
Writing library                          : x264 core 98 r1629 9d1c441
Encoding settings                        : cabac=0 / ref=3 / deblock=1:0:0 / analyse=0x1:0x111 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=0 / 8x8dct=0 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=64 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / constrained_intra=0 / bframes=0 / weightp=0 / keyint=90 / keyint_min=25 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=abr / mbtree=1 / bitrate=400 / ratetol=10.0 / qcomp=0.60 / qpmin=10 / qpmax=51 / qpstep=4 / vbv_maxrate=768 / vbv_bufsize=3000 / ip_ratio=1.41 / aq=1:1.00 / nal_hrd=none
Language                                 : English

Audio
ID                                       : 2
Format                                   : AAC
Format/Info                              : Advanced Audio Codec
Format profile                           : LC
Codec ID                                 : 40
Duration                                 : 9mn 56s
Bit rate mode                            : Variable
Bit rate                                 : 99.1 Kbps
Channel(s)                               : 2 channels
Channel positions                        : Front: L R
Sampling rate                            : 48.0 KHz
Compression mode                         : Lossy
Stream size                              : 7.04 MiB (19%)
Language                                 : English

这是显示媒体信息的命令的示例输出。它在“视频”标题下包含一个比特率,在“音频”标题下包含另一个比特率。我的目标是将这两个变量存储为BASH脚本中的不同变量。

grep使用行号,因为某些文件可能包含音频部分,而有些则没有。那么,有什么方法可以将这两个同名的值保存到不同的变量中?

z

您可以使用sed分别打印“视频”和“音频”部分,然后使用另一个sed提取比特率。假设该信息位于文件中。

VIDEO=`sed -n '/^Video$/,/^$/p' file`
AUDIO=`sed -n '/^Audio$/,/^$/p' file`
VBR=`echo $VIDEO | sed -nr 's/^Bit rate +: //p'`
ABR=`echo $AUDIO | sed -nr 's/^Bit rate +: //p'`

关于提取视频和音频章节:

  • sed -n选项表示无打印
  • /.../,/.../我定义一个开始的正则表达式和一个结束的正则表达式
  • /^Audio$/ 表示整行仅包含“音频”
  • /^$/ 表示空白行
  • p命令将打印上面定义的范围(该范围覆盖-n)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将具有相同标题的不同值保存到不同的变量中(BASH)

来自分类Dev

如何将文件中具有相同值的所有行保存到文件中

来自分类Dev

ggplots for循环产生的图形具有相同的值但标题不同

来自分类Dev

如何处理具有不同值的相同列标题

来自分类Dev

将具有不同大小数组的单元格保存到excel文件中

来自分类Dev

将具有相同标题但在不同表中的两列合并

来自分类Dev

在Excel中合并具有相同标题但顺序不同的表

来自分类Dev

如何列出具有不同值的相同变量?Python

来自分类Dev

PHP 显示具有不同值的相同变量

来自分类Dev

PHP-选择具有相同ID的*,然后将每个ID放到不同的变量中

来自分类Dev

将X列中具有相同值但Y列中具有不同值的行进行分组(无重复)

来自分类Dev

Bash脚本处理文件夹中的所有文件并将所有输出保存到具有相同文件名的不同文件夹中?

来自分类Dev

将具有相同标签的XML值分隔到不同的行中SQL Server

来自分类Dev

Python将具有相同ID但值不同的术语附加到列表中?

来自分类Dev

将具有相同列值的特定数量的记录插入到不同的表中

来自分类Dev

相同的Int在Swift神秘谜语中具有不同的值

来自分类Dev

在不同的列中查找具有相同值的行对

来自分类Dev

在具有相同键的不同数组中输出值

来自分类Dev

如何根据数据框列中的不同值将所有记录保存到多个CSV文件中?

来自分类Dev

bash中不同脚本中的相同变量

来自分类Dev

选择不同列中具有相同值的行或 null 。有多行具有相同的 id

来自分类Dev

使用 R 选择/过滤行:识别具有相同变量的值或将代码归因于不同的连续循环

来自分类Dev

Java相同的枚举具有不同的值

来自分类Dev

具有相同提示但值不同的加法

来自分类Dev

具有不同值字典的相同键

来自分类Dev

如何将 SQL 中的 2 个数据保存到 2 个不同的 PHP 变量中?

来自分类Dev

将一个字符串保存到一个文件中,然后将它加载到一个字符串变量中,将给出一个似乎具有完全相同名称的“不同”字符串

来自分类Dev

如何将具有相同名称的元素值保存到列表

来自分类Dev

将数据从不同变量保存到 csv

Related 相关文章

  1. 1

    将具有相同标题的不同值保存到不同的变量中(BASH)

  2. 2

    如何将文件中具有相同值的所有行保存到文件中

  3. 3

    ggplots for循环产生的图形具有相同的值但标题不同

  4. 4

    如何处理具有不同值的相同列标题

  5. 5

    将具有不同大小数组的单元格保存到excel文件中

  6. 6

    将具有相同标题但在不同表中的两列合并

  7. 7

    在Excel中合并具有相同标题但顺序不同的表

  8. 8

    如何列出具有不同值的相同变量?Python

  9. 9

    PHP 显示具有不同值的相同变量

  10. 10

    PHP-选择具有相同ID的*,然后将每个ID放到不同的变量中

  11. 11

    将X列中具有相同值但Y列中具有不同值的行进行分组(无重复)

  12. 12

    Bash脚本处理文件夹中的所有文件并将所有输出保存到具有相同文件名的不同文件夹中?

  13. 13

    将具有相同标签的XML值分隔到不同的行中SQL Server

  14. 14

    Python将具有相同ID但值不同的术语附加到列表中?

  15. 15

    将具有相同列值的特定数量的记录插入到不同的表中

  16. 16

    相同的Int在Swift神秘谜语中具有不同的值

  17. 17

    在不同的列中查找具有相同值的行对

  18. 18

    在具有相同键的不同数组中输出值

  19. 19

    如何根据数据框列中的不同值将所有记录保存到多个CSV文件中?

  20. 20

    bash中不同脚本中的相同变量

  21. 21

    选择不同列中具有相同值的行或 null 。有多行具有相同的 id

  22. 22

    使用 R 选择/过滤行:识别具有相同变量的值或将代码归因于不同的连续循环

  23. 23

    Java相同的枚举具有不同的值

  24. 24

    具有相同提示但值不同的加法

  25. 25

    具有不同值字典的相同键

  26. 26

    如何将 SQL 中的 2 个数据保存到 2 个不同的 PHP 变量中?

  27. 27

    将一个字符串保存到一个文件中,然后将它加载到一个字符串变量中,将给出一个似乎具有完全相同名称的“不同”字符串

  28. 28

    如何将具有相同名称的元素值保存到列表

  29. 29

    将数据从不同变量保存到 csv

热门标签

归档