Pinvon's Blog

所见, 所闻, 所思, 所想

Linux基础知识

命令

查找文件

find

find path filename

当然, 除了按文件名查找, find 还可以有其他的查找选项, 如文件权限等. 在文件系统较大时, 比较消耗资源.

locate

locate filename
locate /etc/sh  #  查找/etc/目录下所有以sh开头的文件.

locate相当于fine -name, 但是速度快很多, 因为它从数据库中进行查找, 这个数据库中包含所有本地文件信息, Linux会自动创建这个数据库, 并且每天自动更新一次, 所以使用locate命令查找不到最新变化的文件. 可以在使用locate之前, 使用updatedb命令, 手动更新数据库.

which

查找可执行文件.

which executeable_name

查找文件内容

grep

grep keyword -n filename

表示在filename中查找包含keyword的内容, -n表示返回的内容包含keyword所在的行.

sort

sort的功能是对 文件中 的所有行进行排序.

sort 4.txt|cat -n
sort 3.txt > 5.txt

比较

comm

comm对两个有序的文件比较.

comm [-123] file1 file2

该命令有3列输出: 仅在file1中出现的行; 仅在file2中出现的行; 两个文件中都存在的行; -123指定抑制其中的哪些列.

comm -1 file1 file2 表示不显示file1中出现的行, 输出剩下的两列.

diff

diff逐行比较两个文本文件, 但不要求其事先排好序. 以 < 打头的行属于第1个文件, 以 > 打头的行属于第2个文件.

统计(wc)

wc命令可以统计指定文件中的字节数, 字数, 行数, 并将统计结果输出.

目录

  • /bin: 存放Linux的常用命令.
  • /boot: 存放系统启动时要用到的程序.
  • /dev: 存放Linux系统中使用的所有外部设备.
  • /etc: 存放系统管理时要用到的各种配置文件和子目录.
  • /sbin: 存放系统管理员的系统管理程序, 是root用户的可执行命令存放地.
  • /home: 用来存放用户主目录.
  • /lib: 用来存放系统动态链接库.
  • /lost+found: 系统非正常关机时, 在重启后, 有些文件找不到应该存放的地方, 就存放于此目录.
  • /mnt: 临时挂载其他文件系统.
  • /media: 存放即插即用型存储设备的挂载点, 如USB.
  • /opt: 存放自己下载的软件.
  • /proc: 系统运行时, 存放进程信息及内核信息.
  • /tmp: 用户运行程序时, 用于存放临时文件.
  • /usr: 存放系统自带软件.
  • /var: 存放经常变动的文件, 如系统日志.

链接文件命令ln

ln在文件之间创建链接(可简单理解为Windows中的快捷方式, 当然, Linux中的链接还有其他更多的功能). 这种操作实际上是给系统中已有的某个文件创建别名, 对于这个别名, 可以指定不同的访问权限. 如果链接指向目录, 就可以用链接直接进入目录, 而不用输入一大堆的路径名. 如果删除这个链接, 不会对原目录产生影响.

链接有两种, 一种为硬链接, 一种为符号链接(也有人称为软链接).

硬链接的意思是一个文件可以有多个名称, 建立硬链接时, 链接文件和被链接文件必须位于同一个文件系统中, 并且不能建立指向目录的硬链接.

软链接的意思是产生一个特殊的文件, 该文件的内容指向另一个文件的位置.

通俗地讲区别: 如果有一个文件test, 其内容实际上存放在File中, 而test只是一个指针, 指向了File, 我们只能通过test对File进行操作. 创建硬链接时, 相当于创建了另一个指针, 也指向File. 创建软链接, 相当于创建了另一个指针, 指向test. 所以, 当删除源文件test时, 硬链接还能正常访问File, 而软链接则缺少test这个中间节点, 导致不能正常访问File.

ln -option file linkname
ln test hardlink  #  创建名为hardlink的硬链接
ln test softlink  #  创建名为softlink的软链接

Comments

使用 Disqus 评论
comments powered by Disqus