在bash中查找带空格的文件

alt*_*ser 5 bash find

我想在文件夹中搜索文件名中有空格的文件,fe

/vol1/apache2/application/current/Test 1.pdf
/vol1/apache2/application/current/Test 2.pdf
Run Code Online (Sandbox Code Playgroud)

我知道有一个 find 命令,但我无法找出列出所有这些文件的正确参数。

Rak*_*pta 11

使用 find 命令并在两个通配符之间留一个空格。它将匹配具有单个或多个空格的文件。“找 。” 将查找当前文件夹和所有子文件夹中的所有文件。“-type f”只会查找文件而不是文件夹。

find . -type f -name "* *"
Run Code Online (Sandbox Code Playgroud)

编辑

要用下划线替换空格,试试这个

find . -type f -name "* *" | while read file; do mv "$file" ${file// /_}; done
Run Code Online (Sandbox Code Playgroud)


bel*_*liy 7

find

find "/vol1/apache2/application/current" -type f -name "*[[:space:]]*"
Run Code Online (Sandbox Code Playgroud)