文件扩展名问题

IDK

通常在编译C程序时,我会给出以下命令:

gcc -o program_name program_name.c

我有一个充满program_name和program_name.c文件的文件夹。

我想删除program_name文件。因此,我环顾四周,发现了这个,建议使用“ find”命令:

find . -type f -name '*.o' -exec rm {} +

问题在于它需要文件扩展名才能工作,而该文件没有文件扩展名。

我什至找不到它们:

find -type f -name '*.out'

find -type f -name '*.o'

没有结果。

ls -l

-rwxr-xr-x 1 my_username 8432 date & time addressof
-rwxr-xr-x 1 my_username 8480 date & time addressof2
-rw-r--r-- 1 my_username  544 date & time addressof2.c
-rw-r--r-- 1 my_username  128 date & time addressof.c
-rwxr-xr-x 1 my_username 8480 date & time char_array
-rw-r--r-- 1 my_username  390 date & time char_array.c
-rwxr-xr-x 1 my_username 8424 date & time commandline
-rw-r--r-- 1 my_username  202 date & time commandline.c
-rwxr-xr-x 1 my_username 8536 date & time convert
-rwxr-xr-x 1 my_username 8536 date & time convert2
-rw-r--r-- 1 my_username  366 date & time convert2.c
-rw-r--r-- 1 my_username  359 date & time convert.c
-rwxr-xr-x 1 my_username 8424 date & time datatype_size
-rw-r--r-- 1 my_username  532 date & time datatype_size.c
-rwxr-xr-x 1 my_username 8424 date & time firstprog
-rw-r--r-- 1 my_username  108 date & time firstprog.c
-rwxr-xr-x 1 my_username 8480 date & time fmt_strings
-rw-r--r-- 1 my_username  398 date & time fmt_strings.c
-rwxr-xr-x 1 my_username 8520 date & time input
-rw-r--r-- 1 my_username  307 date & time input.c
-rwxr-xr-x 1 my_username 8776 date & time memory_segments
-rw-r--r-- 1 my_username 1641 date & time memory_segments.c
-rwxr-xr-x 1 my_username 8472 date & time pointer
-rw-r--r-- 1 my_username  404 date & time pointer.c
-rwxr-xr-x 1 my_username 8472 date & time pointers
-rw-r--r-- 1 my_username  601 date & time pointers.c
-rwxr-xr-x 1 my_username 8520 date & time pointer_types
-rwxr-xr-x 1 my_username 8520 date & time pointer_types2
-rw-r--r-- 1 my_username  757 date & time pointer_types2.c
-rwxr-xr-x 1 my_username 8520 date & time pointer_types3
-rw-r--r-- 1 my_username 1303 date & time pointer_types3.c
-rwxr-xr-x 1 my_username 8520 date & time pointer_types4
-rw-r--r-- 1 my_username 1002 date & time pointer_types4.c
-rwxr-xr-x 1 my_username 8520 date & time pointer_types5
-rw-r--r-- 1 my_username  943 date & time pointer_types5.c
-rw-r--r-- 1 my_username  682 date & time pointer_types.c
-rwxr-xr-x 1 my_username 8512 date & time scope
-rwxr-xr-x 1 my_username 8584 date & time scope2
-rw-r--r-- 1 my_username  688 date & time scope2.c
-rwxr-xr-x 1 my_username 8640 date & time scope3
-rw-r--r-- 1 my_username 1013 date & time scope3.c
-rw-r--r-- 1 my_username  543 date & time scope.c
-rwxr-xr-x 1 my_username 8432 date & time sizeof_pointer
-rw-r--r-- 1 my_username  199 date & time sizeof_pointer.c
-rwxr-xr-x 1 my_username 8472 date & time stack_example
-rw-r--r-- 1 my_username  178 date & time stack_example.c
-rwxr-xr-x 1 my_username 8544 date & time static
-rwxr-xr-x 1 my_username 8632 date & time static2
-rw-r--r-- 1 my_username  433 date & time static2.c
-rw-r--r-- 1 my_username  334 date & time static.c
-rwxr-xr-x 1 my_username 8528 date & time strtol_function
-rw-r--r-- 1 my_username  423 date & time strtol_function.c
-rwxr-xr-x 1 my_username 8424 date & time typecasting
-rw-r--r-- 1 my_username  308 date & time typecasting.c
-rwxr-xr-x 1 my_username 8480 date & time wrong_pointer
-rw-r--r-- 1 my_username  600 date & time wrong_pointer.c
点心
find -type f ! -name '*.c'

找到每个fILE其文件name不是!在)结束.c

为了安全起见,请使用-ok代替-exec 执行rm以下-i选项:

find -type f ! -name '*.c' -ok rm {} +
find -type f ! -name '*.c' -exec rm -i {} +

如果您绝对确定可以使用-delete(总是作为最后的选择!)自动删除所有发现,而不用调用另一个程序:

find -type f ! -name '*.c' -delete

与往常一样:备份数据并小心删除

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章