标题: [文本处理] 如何用批处理获取剪贴板内容,进行文本替换后再次按命令运行? [打印本页]
作者: asf54a65s4f54 时间: 2022-2-27 20:30 标题: 如何用批处理获取剪贴板内容,进行文本替换后再次按命令运行?
比如我剪贴板复制了一个链接: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
最后再用批处理运行一次最后得到的命令,如何实现?
作者: went 时间: 2022-2-27 21:10
test.bat- #&cls&@powershell -Sta -c "Get-Content '%~0' | Out-String | Invoke-Expression" &pause&exit
- [void][System.Reflection.Assembly]::LoadWithPartialName('PresentationCore')
- if([System.Windows.Clipboard]::ContainsText()){
- $url = [System.Windows.Clipboard]::GetText().Trim() -replace '<playpath>','/'
- 'ffmpeg -i "{0}" -c copy "E:\123.ts"' -f $url | Invoke-Expression
- }
复制代码
作者: asf54a65s4f54 时间: 2022-2-27 21:55
回复 2# went
真是迅速啊太感谢了,还有一点想改进一下就是最后的E:\123.ts,能不能把123.ts弄成按现在的日期时间作为文件名呢?
比如像2022-02-27_21-00-00.ts
这样就能避免同名文件覆盖的问题了
作者: went 时间: 2022-2-27 22:02
- 'ffmpeg -i "{0}" -c copy "E:\{1}.ts"' -f $url,[datetime]::Now.ToString("yyyy-MM-dd_hh-mm-ss") | Invoke-Expression
复制代码
回复 3# asf54a65s4f54
作者: asf54a65s4f54 时间: 2022-2-27 22:19
回复 4# went
完美,谢谢大神
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |