linux常用命令学习笔记

时间:2023-02-25 09:41:52

1.df 查看硬盘使用情况。

2.free 查看内存使用情况。

3.cd ~回home目录 cd -返回上一个目录位置。

4.file filename 查看文件的实际类型。注意,文件的实际类型并不是依据文件后缀名。

5.less filename 调用less查看文件内容。使用Enter查看文件下一行,使用space查看文件下一页,使用b(back)查看上一页。使用g查看文件开头,使用G查看文件结尾。使用 /charaters 查找要搜索的内容,使用字母n向前查找下一个出现的字符串,这个字符串是之前所指定查找的。

6.less 程序是早期 Unix 程序 more 的改进版。less 属于”页面调度器”程序类,这些程序允许通过页方式,在一页中轻松地浏览长长的文本文档。然而 more 程序只能向前分页浏览,而 less 程序允许前后分页浏览,它还有很多其它的特性。

7.ln默认是创建硬链接,例如ln file1 file1.hard创建file1的一个硬链接file1.hard,可以认为file1和file1.hard完全一样(两者拥有一样的inode),此时file1和file1.hard的硬链接数都增加1。ln -s file1 file1.soft表示创建file1的一个软链接,此时file1的硬链接数不变,如果此时删除file1,file1.soft则成为不能访问的文件。

8.cp和rm有-r 选项,而mv没有-r选项。

9.多个命令可以用分号;隔开然后依次执行。例如

➜  ~ cd /usr; ls; cd -
bin  games  include  lib  lib32  local  sbin  share  src
~

我们可以给以上多个命令取一个别名

alias foo='cd /usr; ls; cd -'
➜  ~ foo
bin  games  include  lib  lib32  local  sbin  share  src
~

通过

➜  ~ unalias foo
➜  ~ type foo
foo not found
➜  ~ 

来解除别名。

 10.与 Unix 主题“任何东西都是一个文件”保持一致,程序,比方说 ls,实际上把他们的运行结果 输送到一个叫做标准输出的特殊文件(经常用 stdout 表示),而它们的状态信息则送到另一个 叫做标准错误的文件(stderr)。默认情况下,标准输出和标准错误都连接到屏幕,而不是 保存到磁盘文件。除此之外,许多程序从一个叫做标准输入(stdin)的设备得到输入,默认情况下, 标准输入连接到键盘。

I/O 重定向允许我们可以更改输出走向和输入来向。一般地,输出送到屏幕,输入来自键盘, 但是通过 I/O 重定向,我们可以改变输入输出方向。I/O 重定向允许我们来重定义标准输出送到哪里。重定向标准输出到另一个文件除了屏幕,我们使用 “>” 重定向符,其后跟着文件名。例如:

ls -l /usr/bin > ls-output.txt

这里,我们创建了一个长长的目录/usr/bin 列表,并且输送程序运行结果到文件 ls-output.txt 中。如果我们用 less 阅读器来查看这个文件,我们会看到文件 ls-output.txt 的确包含 ls 命令的执行结果。

如果我们用less查看结果

less ls-output.txt

将会看到文件内的显示的是上条命令执行的结果。

简单地使用重定向符,没有命令在它之前,这会删除一个已存在文件的内容或是 创建一个新的空文件。

ls -l /bin/usr &> ls-output.txt

在这个例子里面,我们使用单单一个表示法 &> 来重定向标准输出和错误到文件 ls-output.txt。

ls -l /bin/usr 2> /dev/null

通过重定向输出结果 到一个特殊的叫做”/dev/null”的文件。这个文件是系统设备,叫做位存储桶,它可以 接受输入,并且对输入不做任何处理。

11.在大多数情况下,你可以认为 cat 命令相似于 DOS 中的 TYPE 命令。你可以使用 cat 来显示 文件而没有分页。

12.使用管道操作符”|”(竖杠),一个命令的 标准输出可以管道到另一个命令的标准输入。

例如

ls -l /usr/bin | less

13.通过管道和过滤器,将几个命令连接起来

ls ~/git_playground /etc | sort | uniq | less

14.grep 是个很强大的程序,用来找到文件中的匹配文本。

比如说,我们想在我们的程序列表中,找到文件名中包含单词”zip”的所有文件。这样一个搜索, 可能让我们了解系统中的一些程序与文件压缩有关系。这样做:

ls /bin /usr/bin | sort | uniq | grep zip

grep 有-对方便的选项:”-i”导致 grep 忽略大小写当执行搜索时(通常,搜索是大小写 敏感的),”-v”选项会告诉 grep 只打印不匹配的行。

15.有时候你不需要一个命令的所有输出。可能你只想要前几行或者后几行的输出内容。 head 命令打印文件的前十行,而 tail 命令打印文件的后十行。默认情况下,两个命令 都打印十行文本,但是可以通过”-n”选项来调整命令打印的行数。

head -n 5 ls-output.txt
tail -n 5 ls-output.txt

tail 有一个选项允许你实时的浏览文件。当观察日志文件的进展时,这很有用,因为 它们同时在被写入。在以下的例子里,我们要查看目录/var/log 里面的信息文件。在 一些 Linux 发行版中,要求有超级用户权限才能阅读这些文件,因为文件/var/log/messages 可能包含安全信息。

tail -f /var/log/messages

使用”-f”选项,tail 命令继续监测这个文件,当新的内容添加到文件后,它们会立即 出现在屏幕上。这会一直继续下去直到你输入 Ctrl-c。

16.tee 程序从标准输入读入数据,并且同时复制数据 到标准输出(允许数据继续随着管道线流动)和一个或多个文件。该命令不会对数据流造成影响。

例如

ls /usr/bin | tee ls.txt | grep zip