回答
与SH
for file in *' '*; do [ -f "$file" ] && mv "$file" "`echo $file|tr -d '[:space:]'`"; done
用Perl 5.14(由do{($x=$_)=~y/ //d;$x}
旧版本替换y/ //dr
)
# Linux/Unix
perl -e 'rename$_,y/ //drfor<"* *">'
# Windows
perl -e "rename$_,y/ //drfor<'* *'>"
与Java
import java.io.File;
public class M {
public static void main(String[] args) {
String o,n;
for (File old : new File(".").listFiles()) {
o=old.getName();
if (!o.contains(" ")) continue;
n=o.replaceAll(" ", "");
old.renameTo(new File(n));
}
}
}
你可以使用bash here-strings来使它变得有点整洁:'mv“$ file”$(tr -d'[:space: ]'<<< $ file)' - 因为我们删除了空格,所以我们不必担心引用新的文件名 –
我知道,但它不适用于sh,在OP之后发表评论使用sh –
啊,他从问题标签中删除了bash。 –
ls -1 | awk '/ /{a=$0;gsub(/ /,"");b="mv \""a"\" "$0;system(b);}'
这ONL重命名旧文件y如果旧文件名包含空格 并且新文件尚不存在。
for old in *; do
new="${old//[[:space:]]}"
[[ $old = $new || -f $new ]] || mv "$old" "$new"
done
我是蟒蛇的大风扇,所以在这里是做同样的
import os
for f in os.listdir("."):
r = f.replace(" ","")
if(r != f):
os.rename(f,r)
['os.rename'](http://docs.python.org/library/os.html#os.rename)比直接调用'mv' –
'os.rename'要好。 – Gautam
既然你是语言无关的Python脚本,这里有一个红宝石一行代码:
ruby -e 'Dir.foreach(".") {|f| f.count(" \t") > 0 and File.rename(f, f.delete(" \t"))}'
- 1. 从目录中的所有文件名删除空格 - Java
- 2. 从当前目录中删除文件
- 3. 如何从当前目录中删除文件夹及其所有内容?
- 4. 如何从Notepad ++中的文件中删除所有空格?
- 5. 如何删除目录中空的所有文件?
- 6. 如何获取当前目录中的所有文件名?
- 7. 如何从特定目录中的文件夹名称中删除空格?
- 8. Bash脚本删除目录中所有文件的前导和尾部空格
- 9. 空目录(删除所有文件)
- 10. 删除目录中的所有文件
- 11. 如何删除所有目录中的所有文件?
- 12. 如何删除目录中的所有文件java android app?当前的代码删除该文件夹
- 13. 从文件名中删除空格
- 14. 删除目录及所有文件中
- 15. 如何在当前目录中输出空文件的名称?
- 16. 删除Git Repo目录中所有以前版本的文件
- 17. 打印当前目录中所有文件的名称 - c
- 18. 如何删除指定目录的所有文件扩展名?
- 19. 如何重命名linux中当前目录中的所有文件
- 20. 如何在不删除Node.js中的目录的情况下从目录中删除所有文件
- 21. 如何从shell中的变量/目录中删除空格?
- 22. 如何列出当前目录中的所有.txt文件?
- 23. 如何对当前目录中的所有文件执行sh
- 24. 如何删除/替换目录名中的空格在Windows
- 25. PHP删除的目录都是空的所有文件和所有子目录
- 26. 获取当前目录中的所有文件和目录python
- 27. 从文件夹中的文件名中删除空格
- 28. 在Unix中,如何删除当前目录中的所有内容?
- 29. 从表中删除MySQL列名中的所有空格?
- 30. 批处理:从文本文件中删除所有空格?
是否有可能会将两个原始文件缩减为相同的文件名?例如。 '文件名a.mp3'和'文件名a.mp3'。 – chepner
我不担心冲突,这可能是另一个问题。 – Gautam
JVM Lang解决方案如何? – Gautam