ubuntu创建、删除文件及文件夹,强制清空回收站方法

jerry ubuntu 2015年08月26日 收藏
mkdir 目录名创建一个目录
rmdir 空目录名删除一个空目录
rm 文件名文件名删除一个文件或多个文件
rm –rf 非空目录名删除一个非空目录下的一切
touch 文件名创建一个空文件
重命名文件夹
执行格式: mv source destination

Example: 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 选项可接受不同的时间/日期格式。