小编Pra*_*kar的帖子

计算具有特定扩展名的特定目录中的文件总数

我想计算特定目录中以“.mp4”扩展名结尾的文件总数。

我收到以下命令:

ls -F |grep -v / | wc -l
Run Code Online (Sandbox Code Playgroud)

它计算特定目录中的所有文件,但我想要以 .mp4 扩展名结尾的文件数。

是否有任何 Ubuntu 命令?

command-line ls

46
推荐指数
4
解决办法
13万
查看次数

如何检查进程是否已经在运行

我想检查特定进程是否已经运行。

我参考了这个问答

但我没有得到任何具体的解决方案。以下是我尝试过的示例:我创建了abc.sh文件并在后台运行此脚本,例如sh abc.sh &.

现在这个文件在后台运行,我启动ps aux | grep "abc"命令。

以下是此命令的输出:

prakash     3594  0.0  0.0   4388   820 pts/0    S+   16:44   0:00 grep --color=auto abc
Run Code Online (Sandbox Code Playgroud)

之后,我停止abc.sh正在运行的脚本并启动相同的命令ps aux | grep "abc"命令。

但我得到相同的输出,如:

prakash     3594  0.0  0.0   4388   820 pts/0    S+   16:44   0:00 grep --color=auto abc
Run Code Online (Sandbox Code Playgroud)

有没有其他方法可以找到进程是否正在运行?

command-line bash scripts process

38
推荐指数
3
解决办法
30万
查看次数

将命令的输出存储到数组中

这是命令:pdc status -a 2>&1 | grep 'okay'它提供以下输出

[okay     ]: you are currently listening: 33
[okay     ]: you are currently listening: 22
[okay     ]: you are currently listening: 11
Run Code Online (Sandbox Code Playgroud)

我已经在 shell 脚本文件中编写了这个命令。但是我想将此命令的输出存储到数组中,以便对数组中的每个索引值进行一些处理。

如何将此命令的输出存储到数组中?

scripts

25
推荐指数
3
解决办法
12万
查看次数

一段时间后停止录制

我有一个使用网络摄像头录制视频的设备ffmpeg。它工作得很好,当录音开始时,我收到了 USR1 信号。停止录音后,我们会收到 USR2 信号。

但我想在 1 小时的录音时间后停止录音。

我不知道,但我想我必须在 1 小时后将 USR2 信号传递给设备。

那我该怎么办呢……!!!

提前致谢。

command-line unity ffmpeg 12.04

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

检查 PulseAudio 接收器音量

是否有任何命令可以检查 PulseAudio 接收器的音量。意味着我想以 % 显示特定接收器的 PulseAudio 音量

即 50%

我已经使用pactl set-sinks-volume 1 50%命令设置了音量。但现在我想检查它是否为 50%。

那么我该怎么做呢?

command-line pulseaudio 12.04

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

如何知道录音设备的当前状态?

我有一个使用ffmpeg. 我正在为该设备使用 Ubuntu 12.04,但我想从命令行了解该设备当前是否正在录制或是否处于空闲状态。

是否有任何 Ubuntu 命令来查找设备的当前状态?

command-line devices ffmpeg

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

从字符串中提取数字

使用此 ubuntu 命令时:

${HOME}/temp/.git describe --always --tags HEAD 
Run Code Online (Sandbox Code Playgroud)

此命令的输出是:

v0.1.5-2-p343h3d3
Run Code Online (Sandbox Code Playgroud)

我想1.5从上面的输出中提取并检查它是否大于 1.5。
有没有办法解决这个问题。?

command-line scripts 12.04

4
推荐指数
1
解决办法
374
查看次数

从后台运行命令在文件名上附加当前时间戳

以下是我在 bash 脚本中使用的命令,它在后台运行:

sshpass -p prakash12 ssh -t -p $1 prakash@localhost './test_new_update_script.sh > /home/log/unit_update_output.log 2> /home/log/unit_update_error.log < /dev/null | echo $! > /home/log/unit_update_pids &'
Run Code Online (Sandbox Code Playgroud)

该命令在运行时创建了 3 个文件,即unit_update_output.logunit_update_error.logunit_update_pids. 并打印相关信息。在那个文件中。

current timestamp我想在每 3 个文件名的末尾附加。

例如: unit_update_output-2014-04-08T22-15-02.log “2014-04-08T22-15-02”这是当前时间戳。

上述命令在后台运行:

那么我该怎么做呢?

command-line bash timestamp

4
推荐指数
1
解决办法
1731
查看次数

如何将字符串变量作为参数传递给awk

我有以下命令:

usb_soundcard_sink=$(pactl list short sinks | grep "alsa_output" | awk '{ print $2 }' | tail -n1)
Run Code Online (Sandbox Code Playgroud)

此命令的输出是:

alsa_output.pci-0000_00_1b.0.analog-stereo
Run Code Online (Sandbox Code Playgroud)

这是另一个查找索引号的命令:

var=$(pactl list short sinks | awk '$2=="alsa_output.pci-0000_00_1b.0.analog-stereo" {print $1}')
Run Code Online (Sandbox Code Playgroud)

输出:

0
Run Code Online (Sandbox Code Playgroud)

但我想在上面的命令中传递“usb_soundcard_sink”变量而不是硬编码值,即“alsa_output.pci-0000_00_1b.0.analog-stereo”。“usb_soundcard_sink”变量的 b'coz 值可能会动态变化。

我也尝试了以下方法:

var=$(pactl list short sinks | awk '$2=="$usb_soundcard_sink" {print $1}')
Run Code Online (Sandbox Code Playgroud)

但它不起作用

那么如何将“usb_soundcard_sink”变量的值传递给上述命令

command-line scripts awk

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

标签 统计

command-line ×8

scripts ×4

12.04 ×3

bash ×2

ffmpeg ×2

awk ×1

devices ×1

ls ×1

process ×1

pulseaudio ×1

timestamp ×1

unity ×1