[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 如何用批处理获取剪贴板内容,进行文本替换后再次按命令运行?

比如我剪贴板复制了一个链接:rtmp://pull.xxxxxxxxxxx.com/live<playpath>_a12ecdb6cfw2Dd9UxqT0g
先把链接中的“<playpath>”替换为斜杠“/”
然后把结果插入到以下命令中:
ffmpeg -i "刚才处理的链接" -c copy "E:\123.ts

这时应该得到命令:
ffmpeg -i "rtmp://pull.xxxxxxxxxxx.com/live/_a12ecdb6cfw2Dd9UxqT0g" -c copy "E:\123.ts

最后再用批处理运行一次最后得到的命令,如何实现?

test.bat
  1. #&cls&@powershell -Sta -c "Get-Content '%~0' | Out-String | Invoke-Expression" &pause&exit
  2. [void][System.Reflection.Assembly]::LoadWithPartialName('PresentationCore')
  3. if([System.Windows.Clipboard]::ContainsText()){
  4.     $url = [System.Windows.Clipboard]::GetText().Trim() -replace '<playpath>','/'
  5.     'ffmpeg -i "{0}" -c copy "E:\123.ts"' -f $url | Invoke-Expression
  6. }
复制代码

TOP

回复 2# went


    真是迅速啊太感谢了,还有一点想改进一下就是最后的E:\123.ts,能不能把123.ts弄成按现在的日期时间作为文件名呢?
比如像2022-02-27_21-00-00.ts
这样就能避免同名文件覆盖的问题了

TOP

  1. 'ffmpeg -i "{0}" -c copy "E:\{1}.ts"' -f $url,[datetime]::Now.ToString("yyyy-MM-dd_hh-mm-ss") | Invoke-Expression
复制代码
回复 3# asf54a65s4f54

TOP

回复 4# went


    完美,谢谢大神

TOP

返回列表