老张的不幸生活

UNIX / Linux 新手入门(六)

#unix

其他一些有用的命令

quota

每位学生在文件系统里都有一定量的相互隔离的磁盘空间用于存储个人文件,通常情况下会有 100MB 左右。如果你超出了配额,需要在 7 天内移除超出的文件。查看你当前的配额以及使用程度可以键入:

      % quota -v

df

df 可以告知文件系统上空间剩余量。比如找出文件服务器上还有多少可用空间:

      % df .

du

du 可以输出每个子目录已用的字节数。当你超出磁盘配额想找出哪个目录包含的文件最多时,这个命令会很有用。在你的私人目录中键入:

      % du -s *

选项 -s 将只显示摘要(总大小), 通配符 * 意味着遍历所有的文件和目录。

gzip

gzip 可以减少文件大小节约磁盘空间。举个例子,键入:

     % ls -l science.txt

记录这个文件的大小,然后压缩 science.txt 键入:

      % gzip science.txt

这将压缩并替换此文件为 science.txt.gz 。 查看文件大小变化可以再次键入 ls -l 。 展开已压缩的文件可以使用 gunzip 命令:

      % gunzip science.txt.gz

zcat

zcat 可以在不解压文件的情况下查看已被 gzip 压缩的文件:

      % zcat science.txt.gz

如果文件内容太长,可以将内容传输给 less 命令逐行查看:

      % zcat science.txt.gz | less

file

file 可以按照文件内容类型给已命名文件分类,比如 文本, 照片,压缩数据等。查看你私人目录中所有的文件,键入:

      % file *

diff

diff 对比两个文件并显示它们之间的差别。假设你有一个文件 file1 , 编辑一下file1 另存为 file2 。查看 file1 与 file2 之前的差异可键入:

      % diff file1 file2

< 开始的行是 file1 的内容,以 > 开始的行是 file2 的内容。

find

find 命令遍历目录中所有的文件以及子目录根据指定的文件名,日期,大小等属性搜索文件。它是一个简单但选项很多的命令,可以通过 man 查看详细手册。

从当前目录开始,遍历所有的子目录,搜索扩展名为 .txt的文件,然后将搜索到的文件名打印到屏幕上,键入:

      % find . -name "*.txt" -print

查找大小超过 1MB 的文件,并将结果呈现为列表形式:

      % find . -size +1M -ls

history

命令解析器(C Shell)会把你输入过的命令保存到一个有序列表,按照输入顺序每条命令都有一个序号。

      % history (显示命令历史列表)

如果你使用 C shell ,你可以使用感叹号方便的重新调用命令:

      $ !! (重新调用最后一条命令)

      % !-3 (重新调用倒数第三条命令)

      % !5 (重新调用第五条命令)

      % !grep (调用 grep 加最后一条命令)

你还可以增加历史记录的长度,键入:

      % set history=100

http://www.ee.surrey.ac.uk/Teaching/Unix/unix6.html