改名rename 改的字 替换后的字 目标长什么样:
[root@localhost d]# ls
1 3 5 7 9 a1 a2 a4 a6 a8 aaaaaaa 妈的c 妈的e 妈的g 妈的i 妈的k 妈的m 妈的o 妈的q 妈的s 妈的u 妈的w 妈的y
2 4 6 8 a* a10 a3 a5 a7 a9 妈的b 妈的d 妈的f 妈的h 妈的j 妈的l 妈的n 妈的p 妈的r 妈的t 妈的v 妈的x
[root@localhost d]# rename 妈的 小可爱 妈的*
[root@localhost d]# ls
1 3 5 7 9 a1 a2 a4 a6 a8 aaaaaaa 小可爱c 小可爱e 小可爱g 小可爱i 小可爱k 小可爱m 小可爱o 小可爱q 小可爱s 小可爱u 小可爱w 小可爱y
2 4 6 8 a* a10 a3 a5 a7 a9 小可爱b 小可爱d 小可爱f 小可爱h 小可爱j 小可爱l 小可爱n 小可爱p 小可爱r 小可爱t 小可爱v 小可爱x
rm 删除:
[root@localhost b]# tree
.
├── a
│ └── a
│ ├── b
│ │ ├── a
│ │ │ ├── b
│ │ │ │ └── bbb
│ │ │ │ └── ccc
│ │ │ │ └── ddd
│ │ │ └── bbb
│ │ │ └── ccc
│ │ │ └── ddd
│ │ └── bbb
│ │ └── ccc
│ │ └── ddd
│ └── bbb
│ └── ccc
│ └── ddd
├── b
│ ├── 1
│ │ ├── a
│ │ ├── b
│ │ └── c
│ ├── 2
│ │ ├── a
│ │ ├── b
│ │ └── c
│ └── 3
│ ├── a
│ ├── b
│ └── c
└── c
└── a
└── bbb
└── ccc
└── ddd
35 directories, 0 files
[root@localhost b]# rm -rf ./b
[root@localhost b]# tree
.
├── a
│ └── a
│ ├── b
│ │ ├── a
│ │ │ ├── b
│ │ │ │ └── bbb
│ │ │ │ └── ccc
│ │ │ │ └── ddd
│ │ │ └── bbb
│ │ │ └── ccc
│ │ │ └── ddd
│ │ └── bbb
│ │ └── ccc
│ │ └── ddd
│ └── bbb
│ └── ccc
│ └── ddd
└── c
└── a
└── bbb
└── ccc
└── ddd
删除奇怪文件:
[root@localhost b]# touch ./-f
[root@localhost b]# ls
-f
[root@localhost b]# rm -f
[root@localhost b]# ls
-f
[root@localhost b]# rm ./-f
rm:是否删除普通空文件 "./-f"?y
locate
-
locate 查询系统上预建的文件索引数据库 /var/lib/mlocate/mlocate.db
-
索引的构建是在系统较为空闲时自动进行(周期性任务),执行updatedb可以更新数据库
-
索引构建过程需要遍历整个根文件系统,很消耗资源
-
locate和updatedb命令来自于mlocate包
find
命令的特点:
-
精确查找
-
实时查找
-
支持查找条件巨多
查找类型 | 关键字 | 说明 |
---|---|---|
按名称查找 | -name | 根据目标文件的名称进行查找,允许使用“*”及“?”通配符 -iname "文件名称" 不区分大小写 |
按文件大小查找 | -size | 根据目标文件的大小进行查找一般使用“+”、“-”号设置超过或小于指定的大小作为查找条件常用的容量单位包括 kB(注意 k 是小写)、MB、GB |
按文件属主查找 | -user | 根据文件是否属于目标用户进行查找 |
按文件类型查找 | -type | 根据文件的类型进行查找文件类型包括普通文件(f)、目录(d)、块设备文件(b)、字符设备文件(c)等 |
按inode号 | -inum | 根据文件inode号查找 |
按权限查找 | -perm | 按文件权限查找 |
最大搜索目录深度 | -maxdepth level | 将你的文件已分级的形式查找 |
最小搜索目录深度 | -mindepth level | 同上 find /etc -maxdepth 2 -mindepth 2 |
-name:
[root@localhost d]# find -name "a*"
./aaaaaaa
./a1
./a2
./a3
./a4
./a5
./a6
./a7
./a8
./a9
./a10
./a*
-size:
[root@localhost /]# find / -size +100000k
/proc/kcore
find: ‘/proc/3798/task/3798/fd/5’: 没有那个文件或目录
find: ‘/proc/3798/task/3798/fdinfo/5’: 没有那个文件或目录
find: ‘/proc/3798/fd/6’: 没有那个文件或目录
find: ‘/proc/3798/fdinfo/6’: 没有那个文件或目录
/run/media/root/CentOS 7 x86_64/LiveOS/squashfs.img
/sys/devices/pci0000:00/0000:00:0f.0/resource1_wc
/sys/devices/pci0000:00/0000:00:0f.0/resource1
/var/lib/rpm/Packages
/var/cache/yum/x86_64/7/updates/gen/primary_db.sqlite
/var/cache/yum/x86_64/7/updates/gen/filelists_db.sqlite
/usr/lib/locale/locale-archive
/usr/lib64/firefox/libxul.so
-user
[root@localhost /]# find / -user user -a -size +100k
find: ‘/proc/3927/task/3927/fd/5’: 没有那个文件或目录
find: ‘/proc/3927/task/3927/fdinfo/5’: 没有那个文件或目录
find: ‘/proc/3927/fd/6’: 没有那个文件或目录
find: ‘/proc/3927/fdinfo/6’: 没有那个文件或目录
/home/user/.cache/tracker/meta.db
/home/user/.cache/tracker/meta.db-wal
/home/user/.cache/tracker/ontologies.gvdb
/home/user/.cache/gnome-software/odrs/ratings.json
/home/user/.cache/gstreamer-1.0/registry.x86_64.bin
/home/user/.local/share/tracker/data/tracker-store.journal
-type
[root@localhost /]# find / -user user -a -size +100k -a -type f
find: ‘/proc/4012/task/4012/fdinfo/5’: 没有那个文件或目录
find: ‘/proc/4012/fdinfo/6’: 没有那个文件或目录
/home/user/.cache/tracker/meta.db
/home/user/.cache/tracker/meta.db-wal
/home/user/.cache/tracker/ontologies.gvdb
/home/user/.cache/gnome-software/odrs/ratings.json
/home/user/.cache/gstreamer-1.0/registry.x86_64.bin
/home/user/.local/share/tracker/data/tracker-store.journal
-inum
[root@localhost d]# find -inum 221839
./a1
-empty 查空文件:
[root@localhost d]# find -empty
./1
./2
./3
./4
./5
./6
./7
./8
./9
./aaaaaaa
./a1
./a2
./a3
./a4
./a5
./a6
./a7
./a8
./a9
./a10
./a*
which 查找命令:
[root@localhost aa]# which is cd
/usr/bin/which: no is in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
/usr/bin/cd