Linux的文件管理类命令
1、ls
ls, dir, vdir - 列目录内容
用法:
ls [选项] [文件名...]
常用选项:
-C 多列输出,纵向排序。
-F 每个目录名加“ / ”后缀,每个 FIFO 名加“ | ”后缀, 每个可运行名加“ * ”后缀。
-R 递归列出遇到的子目录。
-a 列出所有文件,包括以 "." 开头的隐含文件。
-c 使用“状态改变时间”代替“文件修改时间”为依据来排序 (使用“ -t ”选项时)或列出(使用“ -l
”选项时)。
-d 将目录名象其它文件一样列出,而不是列出它们的内容。
-i 输出文件前先输出文件系列号(即 i 节点号: i-node number)。 -l
列出(以单列格式)文件模式( file mode ),文件的链
接数,所有者名,组名,文件大小(以字节为单位),时间信
息,及文件名。缺省时,时间信息显示最近修改时间;可以以 选项“ -c ”和“ -u
”选择显示其它两种时间信息。对于设 备文件,原先显示文件大小的区域通常显示的是主要和次要的
号(majorand minor device numbers)。
-q 将文件名中的非打印字符输出为问号。(对于到终端的输出这是缺省的。)
-r 逆序排列。
-t 按时间信息排序。
-u 使用最近访问时间代替最近修改时间为依据来排序(使用 “ -t ”选项时)或列出(使用“ -l
”选项时)。
-1 单列输出。
2、touch
touch - 修改文件的时间戳记.
用法:
touch [-acm][-r ref_file(参照文件)|-t time(时间值)] file(文件名)...
用法描述
touch 修改每个指定文件file的存取(access)和/或修改(modification)时间戳记.除非使用-r或-t选项,这些时间戳记都将修改为当前的时间.
使用-r选项时,这些戳记将按照文件 ref_file 的时间戳记来修改(即变得和ref_file时间戳记值相同).
使用-t选项,则这些戳记将按照给定的时间值time进行修改.
同时使用或同时不使用选项-a和-m,存取和修改两个戳记都将被更改.若只使 用选项-a,则只修改存取戳记.同样,只使用选项-m,则只修改修改戳记.
若要修改戳记的文件尚不存在,除非使用-c选项,touch将创建它(作为空文件,并赋予0666的模式且受umask值的限制).
常用选项:
-a, --time=atime, --time=access, --time=use
只修改存取时间.
-c, --no-create
如果要修改的文件不存在,此选项使touch不去创建它.
-d, --date=time
使用时间值 time 代替指定文件的戳记值.可以包含月份 名,时区名以及`am'和 `pm'等等.
-m, --time=mtime, --time=modify
只修改修改时间.
-r file, --reference=file
使用参照文件 file 的时间戳记值修改指定文件的时间戳 记.
-t decimtime
这里时间值 decimtime的格式为 MMDDhhmm[[CC]YY][.ss]
从左至右分别是月份,日期,小时,分钟,可选的世纪和 年,以及可选的秒.
touch将用这组数值修改指定文件的 时间戳记.请注意,这个格式与POSIX标准所规定的格式并不一样.
4、rmdir
rmdir-删除空目录
用法:
rmdir [选项] 目录...
描述
rmdir 删除空目录。如果所给出的目录不为空,则报错
常用选项:
-p 如果目录由多个路径名组成,从最后一个路径名开始依次删除,直到所有的路径名都被删完。
例如:命令 'rmdir -p a/b/c' 按 照 'rmdir /a/b/c'; 'rmdir a/b'; 'rmdir a'的顺序删除目录。
5、cat
cat - 连接文件并在标准输出上输出
用法:
cat [选项列表] [文件列表]...
描述
将文件列表中的文件或标准输入连接到标准输出。
常用选项:
-A, --show-all
等价于 -vET 。
-b, --number-nonblank
给非空输出行编号。
-e 等价于 -vE 。
-E, --show-ends
在每行结束显示 $ 。
-n, --number
给所有输出行编号。
-s, --squeeze-blank
将所有的连续的多个空行替换为一个空行。
-t 等价于 -vT 。
-T, --show-tabs
把 TAB 字符显示为 ^I 。
-v, --show-nonprinting
除了 LFD 和 TAB 之外所有控制符用 ^ 和 M- 记方式显示。
--help 显示帮助并退出。
--version
显示版本信息并退出。
没有指定文件或指定的文件是 -,则从标准输入读取。
5、cp
cp - 复制文件和目录
用法:
cp [选项] 文件路径
cp [选项] 文件...目录
描述
cp复制文件(或者目录等).
可以使用这个命令复制一个文件到一个指定的目的地,或者复制任意多个文件到一个目的目录目录.
如果最后一个命令参数为一个已经存在的目录名,cp会将每一个源文件复制到那个目录下(维持原文件名).
如果所给的参数只有两个文件名.它把前一个文件复制到后一个文件上.
如果最后一个参数不是文件名,目录名,和给出多于两个非选项参数,是 错误的.
(因而:如果 /b 已经存在,那么 'cp -r /a /b' 会复制 /a 到 /b 而成为 /b/a.而复制/a/x到/b而成为/b/a/x.但如果/b事先不存在,它会把/a复制为/b 而把/a/x复制为/b/x.)
常用选项:
-a, --archive
复制时,尽可能保持文件的结构和属性.(但不保持目录 结构)等同于 -dpR。
-d, --no-dereference
复制符号链接作为符号链接而不是复制它指向的文件, 并且保护在副本中原文件之间的硬链接.
-f, --force
删除存在的目标文件。 (较:原译文缺下面的部分)
-i, --interactive
无论是否覆盖现存文件都作提示。
-l, --link
制作硬链接代替非目录拷贝。
-p, --preserve
保持原始文件的所有者,组,许可,和时间表属性。
-P, --parents
一个斜杠和指定的源文件名构成目的文件。最后送给 cp的参数必须是一个已存在的目录的名字。
例如, 下面这个命令:
cp --parents a/b/c existing_dir
复制文件 `a/b/c' 到 texisting_dir(现有的目录)/a/b/c',建立任 何缺少的中间目录。
-r 递归地复制目录,复制任何非目录和非符号链接好象他们是常规的文件一样看待.这意味着尝试读出每个源文件的数据,和把它写到目的地上.因而,用这个选项,cp'可能彻底地终止 当不确定地读一个FIFO或者/dev/tty时,(这是一个缺陷.它意味着如果你不知道在这棵树(目录)中有什么要复制的时候,你不得不避开-r并使用-R打开一个未知的设备文件,
比如说一台扫描仪,会有未知的效果发生在硬件上)
-R, --recursive
递归地复制目录,保留非目录(参见上面的 -r ).
实例:
1、使用命令行展开功能,创建/tmp/a1, /tmp/a2, /tmp/a1/a, /tmp/a1/b,在/tmp目录下创建目录:x_y, x_z, q_y, q_z
2、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22
3、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。