重命名目录中的每个文件以删除部分文件名

Nic*_*unt 1 linux command-line rename batch-rename

可能的重复:
使用 bash 批量重命名文件

我有一个目录,里面装满了名称如下的文件:

1418450360_72733601001_th-72713048001.jpg?pubId=1418450360
1418450360_72733606001_vs-72703839001.jpg?pubId=1418450360
1418450360_72733607001_th-72703839001.jpg?pubId=1418450360
1418450360_72733618001_vs-72709868001.jpg?pubId=1418450360
1418450360_72733619001_th-72709868001.jpg?pubId=1418450360
1418450360_72733621001_vs-72709874001.jpg?pubId=1418450360
1418450360_72733622001_th-72709874001.jpg?pubId=1418450360
1418450360_72733629001_vs-72714456001.jpg?pubId=1418450360
1418450360_72733630001_th-72714456001.jpg?pubId=1418450360
1418450360_72734162001_vs-72713060001.jpg?pubId=1418450360
1418450360_72734163001_th-72713060001.jpg?pubId=1418450360
1418450360_72734174001_vs-72714480001.jpg?pubId=1418450360
1418450360_72734175001_th-72714480001.jpg?pubId=1418450360
1418450360_72734770001_vs-72718313001.jpg?pubId=1418450360
1418450360_72734771001_th-72718313001.jpg?pubId=1418450360
1418450360_72734776001_vs-72714511001.jpg?pubId=1418450360
1418450360_72734777001_th-72714511001.jpg?pubId=1418450360
Run Code Online (Sandbox Code Playgroud)

重命名所有这些以删除查询部分的快速方法是什么?即从foo.jpg?barfoo.jpg

Nic*_*unt 5

我自己解决了:

rename 's/jpg?.*/jpg/' *
Run Code Online (Sandbox Code Playgroud)