gpt4 book ai didi

awk - xargs 将扩展连接到一个参数上

转载 作者:行者123 更新时间:2023-12-02 00:24:49 28 4
gpt4 key购买 nike

我正在尝试设置一个脚本,以根据 transmission-remote 的输出自动删除 .torrent 文件。

transmission-remote http://localhost/transmission -l | grep 100% | grep Finished | awk '{print $10}' | xargs -I% -r -p -n 1 /bin/rm /mnt/samba/Dropbox/%.torrent

这是我当前的输出:

/bin/rm /mnt/samba/Dropbox/MyTorrent.torrent ?...y

/bin/rm: cannot remove `/mnt/samba/Dropbox/MyTorrent.torrent': No such file or directory

输出的名称与 .torrent 名称相同

root@mfalc:/mnt/samba/Dropbox/# ls
MyTorrent.torrent
root@mfalc:/mnt/samba/Dropbox/#

这也是 awk

之前的样子
root@mfalc:~# transmission-remote http://localhost/transmission -l | grep 100% | grep Finished | grep Done 
12 100% 174.4 MiB Done 0.0 0.0 0.01 Finished MyTorrent

我已经模糊了实际的种子文件名称,但是有人有什么建议吗?我是否正确地将 .torrent 扩展与 xargs 连接在一起?

最佳答案

好吧,你不需要 xargsawk 可以为你做(只有那部分):

awk '{print $10 ".torrent"}'

更好的 awk 可以在其上调用 rm:

awk '{system("rm -i " $10 ".torrent")}'

如果您的 torrent 名称中有空格:

awk '{system("rm -i " gensub(" ","\\\\ ","g",$10) ".torrent")}'

关于awk - xargs 将扩展连接到一个参数上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9223476/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com