Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash 重命名Shell中按相反顺序编号的文件_Bash_Shell - Fatal编程技术网

Bash 重命名Shell中按相反顺序编号的文件

Bash 重命名Shell中按相反顺序编号的文件,bash,shell,Bash,Shell,我正在寻找一种在shell中进行此练习的实用方法 我有以下文件: 1.txt 2.txt 3.txt 4.txt 5.txt [...] 50.txt 我想这样重命名 50.txt → 1.txt 49.txt → 2.txt 48.txt → 3.txt ... 按相反顺序重命名它们。创建一个目录重命名,以防止用新文件重写旧文件,然后尝试以下代码: for i in {1..50}; do mv "$i.txt" "renamed/$(( 50 - $i + 1 )).txt" d

我正在寻找一种在shell中进行此练习的实用方法

我有以下文件:

1.txt 2.txt 3.txt 4.txt 5.txt [...] 50.txt
我想这样重命名

50.txt → 1.txt
49.txt → 2.txt
48.txt → 3.txt
...

按相反顺序重命名它们。

创建一个目录
重命名
,以防止用新文件重写旧文件,然后尝试以下代码:

for i in {1..50}; do
    mv "$i.txt" "renamed/$(( 50 - $i + 1 )).txt"
done

这将反转文件名。

我尝试使用循环,但我想做一些更简单的事情。Stackoverflow实际上是针对编程中的特定问题,例如“为什么我在这个试图以相反顺序重命名文件的程序中得到‘缺少目标文件操作数’?”。对于开放式任务,如“请为我编写一个在bash中以相反顺序重命名文件的程序”,您可以通过许多在线自由职业者网站中的任何一个便宜地获得。如果您可以提供
循环
,那么这个问题实际上可能有答案。。或者至少我们可以把你引向正确的方向。。。仅供参考:@RobinPlotnik不确定我是否理解您的意思。@Robin此代码将以相反的顺序修改您的上半部分文件和下半部分文件,并在下半部分生成每个文件的2个副本,而上半部分文件将消失。