Ubuntu下创删除文件及文件夹,强制清空回收站方建、重命名、法

本文详细介绍了Ubuntu环境下创建、删除、重命名文件与文件夹的方法,包括使用mkdir、rmdir、rm命令创建与删除目录,以及mv命令进行重命名与移动。此外,还讲解了如何使用touch命令创建空文件,以及rename命令实现文件批量重命名。最后介绍了如何强制清空回收站以彻底删除文件。
http://hi.baidu.com/%B0%A2%CD%F2/blog/item/a45890673218382fab184ca4.html
Ubuntu下创删除文件及文件夹,强制清空回收站方建、重命名、法
2009年12月30日 星期三 15:05

mkdir 目录名           ——创建一个目录
rmdir 空目录名        ——删除一个空目录
rm 文件名 文件名     ——删除一个文件或多个文件
rm -rf 非空目录名    ——删除一个非空目录下的一切
touch 文件名           ——创建一个空文件

重命名文件(夹) / 移动文件(夹)到指定文件夹echWeb-技术社区5].O"?8H.I
执行格式: mv source destination

举例:
mv file1 file2 表示将文件 file1,更改文件名为 file2。 mv file1 dir1 将文件 file1,移到目录 dir1下,文件名仍为 file1。 mv dir1 dir2 若目录 dir2 存在,则将目录 dir1,及其所有文件和子目录,移到目录 dir2 下,新目录名称为 dir1。若目录 dir2 不存在,则将dir1,及其所有文件和子目录,更改为目录 dir2。

rename命令是专用于文件重命名的,而且根据其后的例子可以看出,rename除了给单个文件重命名,还可以批量文件重命名。同时,值得注意一点的是,rename命令是带3个参数而不是很多人认为的2个参数。

上面的例子中给出了两种文件批量重命名的用法,而实际上,rename结合通配符使用,它的功能比上面的例子所显示的更强大。基本的通配符有以下几个:

?    可替代单个字符

*    可替代多个字符

[charset]    可替代charset集中的任意单个字符

下面以例子加以说明:

如文件夹中有这些文件foo1, ..., foo9, foo10, ..., foo278,如果使用

rename foo foo0 foo?

则它只会把foo1到foo9的文件重命名为foo01到foo09,因为?通配符只能替代单个字符,所以被重命名的文件只是有4个字符长度名称的文件,文件名中的foo被替换为foo0。

再继续使用

rename foo foo0 foo??

则文件夹中的foo01到foo99的所有文件都被重命名为foo001到foo099,而foo100及其以后的文件名都不变,因为通配符?的使用,所以只重命名5个字符长度名称的文件,文件名中的foo被替换为foo0。

如果再继续使用

rename foo foo0 foo*

则foo001到foo278的所有文件都被重命名为foo0001到foo0278,因为通配符*可替代多个字符,所以,所有以foo开头的文件都被重命名了,文件名中的foo被替换为foo0。

我们再来看通配符[charset]的用法,还是继续在上面所说的文件夹中,执行如下命令

rename foo0 foo foo0[2]*

则从foo0200到foo0278的所有文件都被重命名为foo200到foo278,文件名中的foo0被替换为foo。

在使用中,三种通配符可以一起结合使用,关于具体的其它用法就只有自己不断的摸索了。

强制清空回收站

ubuntu8.04以前的版本

sudo rm -fr $HOME/.Trash/*


ubuntu 8.04 及以上

sudo rm -fr $HOME/.local/share/Trash/files/*




下面是touch命令用法
-a                     只更改访问时间
-c, --no-create        不创建任何文件
-d, --date=字符串        使用<字符串>表示时间而非当前时间
-f                     (忽略)
-m                     只更改修改时间
-r, --reference=文件   使用指定<文件>的时间属性而非当前时间
-t STAMP               使用 [[CC]YY]MMDDhhmm[.ss] 格式的时间而非当前时间
--time=WORD            使用 WORD 指定的时间:access、atime、use 都等于 -a
选项的效果,而 modify、mtime 等于 -m 选项的效果
--help     显示此帮助信息并离开
--version 显示版本信息并离开

请注意,-d 和 -t 选项可接受不同的时间/日期格式。


### 恢复清空后的回收站文件Ubuntu 系统中,当用户通过图形界面(如 Nautilus 文件管理器)清空回收站时,系统并不会立即从磁盘上彻底删除这些文件回收站的路径为 `~/.local/share/Trash`,其中包含三个子目录:`files`、`info` 和 `expunged`。通常情况下,被删除但尚未清空文件存储在 `files` 目录中,而一旦清空回收站,部分文件可能被移动到 `expunged` 目录下[^2]。 如果已经清空回收站但仍希望尝试恢复文件,则需要使用专业的数据恢复工具,因为此时文件系统中的索引节点已经被标记为“可重用”,意味着数据仍可能存在,直到被新写入的数据覆盖。 --- ### 使用 `extundelete` 恢复已清空回收站文件 对于 ext3 或 ext4 文件系统的分区,可以使用 `extundelete` 工具尝试恢复已被删除清空回收站文件。以下是具体操作步骤: 1. **安装 `extundelete`** ```bash sudo apt-get install extundelete ``` 2. **卸载目标分区** 为了避免数据被覆盖,议先将目标分区卸载: ```bash sudo umount /dev/sdXn ``` 其中 `/dev/sdXn` 是你文件所在的分区。 3. **扫描并恢复文件** 执行以下命令进行恢复: ```bash sudo extundelete /dev/sdXn --restore-all ``` 恢复的文件将保存在当前目录下的 `RECOVERED_FILES` 文件夹中。 4. **按时间范围恢复** 如果知道文件删除的大致时间,可以使用 `--after` 和 `--before` 参数进行更精确的恢复。例如恢复过去一小时内删除文件: ```bash sudo extundelete /dev/sdXn --after $(date -d '1 hour ago' +%s) --before $(date +%s) ``` --- ### 使用 `PhotoRec` 进行深度恢复 `PhotoRec` 是 `TestDisk` 套件的一部分,支持多种文件系统和格式,适用于恢复已被清空回收站文件。 1. **安装 `TestDisk`** ```bash sudo apt-get install testdisk ``` 2. **运行 `PhotoRec`** ```bash sudo photorec ``` 启动后选择目标磁盘和分区,并指定一个外部存储位置用于保存恢复的文件,以避免覆盖原始数据。 3. **分析与恢复** `PhotoRec` 将扫描选定分区并尝试识别可恢复的文件。它会根据文件头信息重文件内容,因此即使文件系统损坏也能有效恢复。 --- ### 注意事项与恢复原理 在 Linux 系统中,删除文件本质上是将文件占用的 inode 和数据块标记为“未使用”。只要这些数据块未被新数据覆盖,就有可能恢复。因此,在发现误删重要文件后应尽量减少对磁盘的写入操作,包括不要频繁挂载或读写该分区。 此外,为了提高恢复成功率,推荐将恢复的目标路径设置在其他分区或外部设备中,以防止数据覆盖问题。 ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值