首先抛出一个问题,如果你在文件中建立了一个 -a.txt 的文件,你会怎么删除它?

我之前的回答是

rm -a.txt

实验结果很明显,不能删除。

因为在 Linux 下,会把 -a.txt 前面的 - 认为是 rm 的一个选项,然而 rm 命令并没有这个选项,所以会报错,并且不能删除。

所以对于前面有特殊字符 - 的文件

rm ./-1.txt

就可以删除了。

--

前面可能说了一堆废话,并没说 {} 有什么用。

上面我们说了如何删除特殊字符 - 的文件,可是在实际过程中,会不小心建立各种各样的文件。

各种特殊符号,实际上,我们并不能使用一种通用的方法来说每种特殊符号改怎么删除。

这里就会引入对 find 命令的使用

--

关于 find 的命令的一般问题这里也不做赘述。

我们知道,每个文件都有一个类似于 ID 的东西。

我们可以用

ls -ai

来查看我们文件的ID 这里我随便列出一个特殊文件的ID

9380 -111

--

之后我们就可以使用 find 来找到这个文件

find . -inum 9380

在找到这个或多个文件之后,我们就可以操作它。

{} 的作用更像是一个之前命令产生的一个集合一样,我们队这个集合进行操作。

find . -inum 9380 -exec rm {} \;

这样子我们就会执行 -exec 下面的命令,去删除上面已经找到的集合。

--

这里只是对于 {} 的一个示例,其他的用法还有很多。

还有一个参数是 -ok

如果是这样的:

find . -inum 9380 -ok rm {} \;

他和上面不一样的是,在删除的时候会询问你是否删除。

--

通过这个小例子,明白了 {} 其实也挺像 | 的管道命令,都是操作上一个结果。

2018/05/07 Linux find命令中{}的作用的更多相关文章

  1. linux top命令中各cpu占用率含义

    linux top命令中各cpu占用率含义 [尊重原创文章摘自:http://www.iteye.com/topic/1137848]0.3% us 用户空间占用CPU百分比 1.0% sy 内核空间 ...

  2. (转)linux top命令中各cpu占用率含义及案例分析

    原文:https://blog.csdn.net/ydyang1126/article/details/72820349 linux top命令中各cpu占用率含义 0 性能监控介绍 1 确定应用类型 ...

  3. linux free命令中buffer与cache的区别

    linux free命令中buffer与cache的区别 2012-05-15      个评论       收藏    我要投稿 linux free命令中buffer与cache的区别   ~$ ...

  4. linux find命令中-print0和xargs中-0的用法

    linux find命令中-print0和xargs中-0的用法. 1.默认情况下, find命令每输出一个文件名, 后面都会接着输出一个换行符 ('\n'), 因此find 的输出都是一行一行的: ...

  5. Linux dd命令中dsync与fdatasync的区别【转】

    在Linux系统中经常会使用dd命令来测试硬盘的写入速度,命令会涉及到两个参数:dsync与fdatasync,本文介绍一下其区别. dd if=/dev/zero of=/tmp/1Gbytes b ...

  6. Linux shell命令中expr

    在Linux shell命令中expr虽然不是很起眼,但是它的作用是非常大的!到目前为止,我个人看来最大的作用就是两个——四则运算和字符串的操作. 先说四则运算,在Shell中四则运算不能简简单单的加 ...

  7. Linux top命令中CPU信息的详解(转)

    add by zhj: 下面的文章解释的很好了,这里再说明一下top命令中wa的含义,我们知道,当IO阻塞时,操作系统会把进程改为阻塞态,将CPU调度到运行其它进程. CPU在空闲状态下,会检查是否有 ...

  8. Linux curl命令中,HTTP 302处理

    在Linux中使用curl命令时,偶尔会遇到一些URL跳转到新的URL,即HTTP中的3XX(redirection,重定向 ). $curl -s -I $URL > log 这时在返回的报文 ...

  9. Linux grep 命令中的正则表达式详解

    在 Linux .类 Unix 系统中我该如何使用 Grep 命令的正则表达式呢? Linux 附带有 GNU grep 命令工具,它支持扩展正则表达式(extended regular expres ...

随机推荐

  1. Selenium Web 自动化 - 项目实战(一)

    Selenium Web 自动化 - 测试框架(一) 2016-08-05 目录 1 框架结构雏形2 把Java项目转变成Maven项目3 加入TestNG配置文件4 Eclipse编码修改5 编写代 ...

  2. idea 导入 android项目

    1. 2. 主要是勾选上面选项. next next 导入即可

  3. hdoj:2024

    #include <iostream> #include <string> #include <vector> using namespace std; int m ...

  4. MySQL 5.7的安装及主从复制(主从同步)

    1.master上开启binlog日志,配置如下 一般mysql配置文件在目录/etc下,叫my.cnf (如果找不到的话也有可能在这些目录下:/etc/my.cnf,/etc/mysql/my.cn ...

  5. RMAN正确地删除Archivelog以及设置有备库的归档删除策略

    原文链接:http://blog.sina.com.cn/s/blog_64e166580100xks5.html 如何正确地删除Archivelog: Archivelog并不能直接得从OS层直接物 ...

  6. Win7/Win10多用户同时使用远程桌面

    Win7/Win10正常情况下是不允许多用户同时远程的,即一个用户远程进来会把另一个用户踢掉,需要破解. Win7:安装UniversalTermsrvPatch-x64.exe,见https://p ...

  7. ruby的第一次使用

    今天看购买的小册,看到推荐使用的工具是ruby写的,提供了源码地址,但是不知道怎么使用 因此尝试使用了下ruby,并记录下来 1.安装 去ruby的官网,下载windows安装包 启动 Ruby 安装 ...

  8. GoLang之strings、buffers、bytes、binary包

    strings包 strings包的使用举例: package main import s "strings" import "fmt" var p = fmt ...

  9. mysql添加字段并且设置默认值

    ALTER TABLE task ADD uploadStatus TINYINT(4) DEFAULT '0' COMMENT '上传状态';

  10. 前端html、CSS快速编写代码插件-Emmet使用方法技巧详解

    前端html.CSS快速编写代码插件-Emmet使用方法技巧详解   Emmet的前身是大名鼎鼎的Zen coding,如果你从事Web前端开发的话,对该插件一定不会陌生.它使用仿CSS选择器的语法来 ...