Chinaunix首页 | 论坛 | 博客
  • 博客访问: 59637
  • 博文数量: 26
  • 博客积分: 315
  • 博客等级: 二等列兵
  • 技术积分: 299
  • 用 户 组: 普通用户
  • 注册时间: 2012-08-05 17:32
文章分类
文章存档

2014年(13)

2013年(3)

2012年(10)

我的朋友

分类: LINUX

2014-02-08 14:57:37

摘自:[美]Harley Hahn:Unix & Linux大学教程

十九、目录操作

 

 

1)路径名

arch@archlinux /usr $ /usr/share/dict/words

绝对路径名:从根目录开始,/usr/share/dict/words

相对路径名:从工作目录开始,./share/dict/words

..    父目录

.     工作目录

~    home目录

 

2)在目录树中移动:cdpwd

cd (change directory) 改变目录

pwd (print working directory) 显示工作目录

 

3)创建、删除、移动目录

mkdir [-p] directory...

其中directory是希望创建目录的名称。

规则:1.不能在同一父目录下创建相同目录;2.父目录不存在,不能创建子目录。

使用-p选项,可以不顾规则2,创建全部结构。

rmdir [-p] directory...

规则:1.目录不空,无法删除;2.不能删除工作目录和根目录之间的任何目录。

mv directory target

其中directory是希望移动或重命名的目录,target是目标或新名称。

 

4)使用目录栈:pushd\popd\dirs

在任何时候可以使用pushd命令将目录的名称压入到目录栈(directory stack)中。然后,可以使用popd命令从栈中弹出一个目录名称。此外,随时可用dirs命令显示栈的内容。这些命令的语法为:

pushd [directory | +n]

popd [+n]

dirs [-c] [-l] [-v]

其中directoty是目录的名称,n是标识符。注意:当dirs使用选项时,选项必须单独指定,不能连在一起。

在任何时候,栈顶存放的就是工作目录的名称。

dirs命令加-vverbose,详细)选项,将显示栈中元素的行号。带上-l选项以后,dirs将显示home目录的完整名称。-c选项清空目录栈。

为了使目录栈更容易使用,可以用dirs -vpushd创建别名。

alias d=”dirs -v"        alias p=pushd  (Bash)

alias d ”dirs -v"        alias p pushd   (C-shell)

 

5)列举目录内容:ls –CrR1

ls(list files,列举文件)程度是最常用的Unix程序之一。

只考虑最重要的选项,ls程序语法为

ls [-aCdFglrRs1] [name...]

其中name是目录或文件的名称。

ls程序的默认行为就是按字母表顺序(与区域设置相关)显示目录中各文件的名称。-r选项可以反序显示。

如果由于某种原因,您希望ls以列的形式将输出写入到文件或管道中,可以使用-C选项。

如果希望强制ls程序以每个文件名占一行的形式将输出写到终端,则可使用-1选项。(数字1

如果希望显示整个目录树,则可使用-R选项。

 

6)查看文件类型:ls –F; ls –color (linux); file

使用带-Fflag,标志)选项的ls时,ls在特定类型的文件名称之后显示一个标志,*表示可执行文件,/是目录,@表示符号链接,|命名管道,没有标志的是普通文件。

如果是Linux,那么除-F选项外,还可以用—color选项,语法为

ls –color[=always | =auto |=never] [name...]

auto表示ls仅当输出要在终端上显示时才使用颜色。

file命令的语法为:file [name...]

 

7)掌握磁盘空间使用情况:ls –hs, du, df, quota

-s(size,大小)选项的ls程序,将在文件名前面以KB为单位列出文件大小。对于Linux来说,还可以使用-h(human-readable)选项显示一个合适的单位。

du (disk usage)可以用来显示文件的大小,语法为:

du [-achs] [name...]

输出多以KB为单位,为了在显示大小时显示单位,可以使用-h选项,-s选项,du将只显示总和。-c选项在输出末尾显示总量。-a选项,du将显示它所处理的每个目录和文件的大小。

df (disk free-space)显示每个文件系统使用了多少磁盘空间,以及还有多少空间可用,-h选项以适合人类阅读的方式显示输出。

如果系统设置有配额,则可使用quota程序检查使用及限制情况。

-v选项显示详细信息: quota -v

 

8)块和分配单元的查看:dumpe2fs

输入dumpe2fs命令,后面跟特殊文件的名称,例

dumpe2fs /dev/hda1 | grep “Block size”

 

9)通配符

*    匹配除/(斜线)字符之外的任何字符

?    匹配除/(斜线)字符之外的任何单一字符

[list]      匹配list中的任何字符

[^list]    匹配不在list中的任何字符

{string1 | string2}     匹配其中一个指定的字符

[[:lower]]     小写字母

[[:upper]]     大写字母

[[:digit]]       数字

[[:alnum]]    数字和字母

[[:alpha]]     字母

 

10)点文件显示:ls -a

-a选项将列出所有文件,包括隐藏文件。

 

11)长目录列表:ls -dhltu

-l选项代表长列表,时间和日期是修改时间。

使用-l选项时可用-u选项将显示文件的访问时间。

如果希望按时间顺序显示文件,则可以使用-t选项。

组合使用-t选项和-r选项,则按最旧到最新顺序显示。

默认情况以字节为单位显示大小,可以-h选项显示单位。

如果希望显示目录本身的信息,则可以使用-d选项。

-l选项可以通过将输出管道传给过滤以众多富有想象力的方式使用。例:

ls -l | grep Sep

 

12)显示目录树:tree Linux

语法为:tree [-adfFilrst] [-L level] [directory...]

其中level是树的深度,而directory是目录的名称。

-a选项显示所有文件,-s选项显示文件大小,-F选项显示一个标识文件类型的标志,-r按相反顺序输出排序,-t按时间对输出排序。

-d选项,只显示目录。

-f选项显示完整的路径名。

-i选项省略缩进。

为了限制树的深度,可以使用-L(limit)选项,后跟一个数字。

-l选项告诉tree跟随所有的符号连接。

 

 

阅读(461) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~