终端常用工具-使用示范
ffmpeg合并视频文件
如果你有这几个视频需要合并:
1.flv
,2.flv
,3.flv
你只需要建立一个文本文件(e.g.ff.txt
),在里面写入:
# 相对路径、绝对路径均可
file '/path/1.flv'
file '/path/2.flv'
file '/path/3.flv'
然后在terminal中运行:
ffmpeg -f concat -i /path/ff.txt -c copy output.mp4
# 参数说明:
# -i 设定输入文件
# -f 设定编码器,这里使用 concat 无损合并
# -c 流选择器,这里选择所有流
# output为所生成文件名,可以任意修改
# 最后可以选择任何可以封装的格式,不一定是 MP4
然后就会开始合并了
参考文档: 使用 ffmpeg 拼接 bilibili 客户端所下载的分段 flv 视频
批量重命名 - zsh方法
例如:把small修改为large
image_0_small.png | image_1_small.png | image_2_small.png |
---|---|---|
image_0_large.png | image_1_large.png | image_2_large.png |
zmv 'image_(*)_small.png' 'image_$1_large.png'
# 注释
# 第一个参数'image_(*)_small.png'是待替换的文件名,其中(*)是通配规则
# 第二个参数'image_$1_large.png'是替换后的文件名
另外需要注意,zsh并不是一启动就可以直接使用zmv命令,需要先执行:
autoload -U zmv
为了方便可以把这一行加载zmv的代码放到~/.zprofile中。
参考文档: 命令行下批量重命名文件的三种方法
axel下载神器
axel -n 30 http://example.com/example.dmg
# 注释
# 30 表示线程数,如果电脑性能够强劲的话把30变大也行(别太大,否则cpu受不了,通常几十就行)
参考文档: "王东旭"在"Mac上有什么比较好用的下载文件?"上的回答
tee保存输出流到文件
有时我们想要在屏幕上执行command输出信息
又想保留下输出的信息到指定的文件中
# 将eg1的cat输出保存到eg2.txt
cat eg1.txt | tee eg2.txt
# 将ls -alt的输出保存到ls.txt
ls -alt | tee ls.txt
#追加到指定文件中,tee的默认模式为覆盖
tee -a
#忽略中断信息
tee -i
参考文档: andy572633
解压tar.gz和tar.bz2
-
解压tar.gz文件
tar -zxvf filename.tar.gz
-
解压tar.bz2文件
tar -jxvf filename.tar.bz2