我正在写这个 oneliner,它给了我一个错误,比如语法错误、意外的文件结尾。我希望它成为一个 oneliner 并删除在文件夹“uso”中找到的所有具有 .c 扩展名的文件。谢谢!
#! /bin/bash
for file in $(find uso | grep "[.][c]$"); do rm -rf $file done
最佳答案
在末尾添加一个分号。
for file in $(find uso | grep "[.][c]$"); do rm -rf $file; done
顺便说一句,更好的方法是:
find uso -name '*.c' -delete # GNU find
find uso -name '*.c' -exec rm -f {} \; # POSIX find
这些将安全地处理包含空格的目录和文件名。
关于linux - 为什么这个 oneliner 会给我一个错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28116652/