[Linux]命令记录

  1. ls:查询目录中内容

ls [选项] [文件或目录]

选项:

  • -a:显示所有文件,包括隐藏文件
  • -l:显示详细信息
  • -d:查看目录属性
  • -h:人性化显示文件大小
  • -i:显示inode

End

  1. mkdir:建立目录

mkdir -p [目录名]

原意:make directories

选项:

  • -p:递归创建

End

  1. cd:切换所在目录

cd [目录]

原意:change directories

简化操作:

  • cd ~:进入当前用户的家目录
  • cd:进入当前用户的家目录
  • cd -:进入上次目录
  • cd ..:进入上一级目录
  • cd .:进入当前目录

End

  1. pwd:查询所在目录位置

pwd

原意:print working directory

  1. rmdir:删除空目录

rmdir [目录名]

原意:remove empty directories

  1. rm:删除文件或目录

rm -rf [文件或目录]

原意:remove

选项:

  • -r:删除目录
  • -f:强制

End

  1. cp:复制命令

cp [选项] [原文件或目录] [目标目录]

原意:copy

选项:

  • -r:复制目录
  • -p:连带文件属性复制
  • -d:若源文件是链接文件,则复制链接属性
  • -a:相当于 -pdr

End

  1. mv:剪切或改名命令

mv [原文件或目录] [目标目录]

原意:move

  1. ln:链接命令

ln -s [原文件] [目标文件]

原意:link

选项:

  • -s:创建软链接

硬链接特征:

  • 拥有相同的i节点和存储block块,可以看做是同一个文件
  • 可通过i节点识别
  • 不能跨分区
  • 不能针对目录使用

软链接特征:

  • 类似Windows快捷方式
  • 软链接拥有自己的i节点和block块,但是数据块中只保存原文件的文件名和i节点号,并没有实际的文件数据
  • 文件权限都为lrwxrwxrwx,其中l是指软链接
  • 修改任意文件,另一个都改变
  • 删除原文件,软链接不能使用
  1. locate:文件搜索命令

locate 文件名

在后台数据库中按文件名搜索,搜索速度更快

/var/lib/mlocate:locate命令所搜索的后台数据库

updatedb:更新数据库

etc/updatedb.conf:locate、whereis、which命令的搜索规则配置文件

  • PRUNE_BIND_MOUNTS = “yes”:开启搜索限制
  • PRUNEFS = :搜索时,不搜索的文件系统
  • PRUNENAMES = :搜索时,不搜索的文件类型
  • PRUNEPATHS = :搜索时,不搜索的路径

End

  1. whereis:搜索命令的命令

whereis 命令名

搜索命令所在路径及帮助文档所在位置

选项:

  • -b:只查找可执行文件
  • -m:只查找帮助文档

End

  1. which:搜索命令的命令

which 文件名

搜索命令所在路径及别名

  1. find:文件搜索命令

find [搜索范围] [搜索条件]

  • 避免大范围搜索,会非常耗费系统资源。
  • find是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符匹配,通配符是完全匹配。
  • 通配符:
    • *:匹配任意内容
    • ?:匹配任意一个字符
    • []:匹配任意一个中括号内的字符
  • 搜索条件:
    • -name:指定文件名,如find /root -name install.log
    • -iname:不区分大小写,如find /root -iname install.log
    • -user:按照所有者搜索,如find /root -user root
    • -nouser:查找没有所有者的文件,如find /root -nouser
    • -mtime-atimectime:按照最新内容修改日期、最新访问日期、最新文件属性改变日期查找文件
      • -mtime -10:10天内修改的文件
      • -mtime 10:10天当天修改的文件
      • -mtime +10:10天前修改的文件
    • -size:按照文件大小查找文件,其中大小单位中,k是小写,M是大写,不能不写单位,不写的话默认是块
      • -size -25k:小于25KB的文件
      • -size 25k:等于25KB的文件
      • -size +25k:大于25KB的文件
    • -inum:按照i节点查找文件,如find /root -inum 262148
    • -a 或者 and:逻辑与,两个条件都满足
    • -o 或者 or:逻辑或,两个条件满足一个即可
    • exec 对find结果处理的命令 {} \;:对搜索结果执行其他命令,如find /root -name install.log -exec ls -al {} \;(对结果执行ls -al命令)

End

  1. grep:字符串搜索命令

grep [选项] 字符串 文件名

在文件当中匹配符合条件的字符串

选项:

  • -i:忽略大小写
  • -v:排除指定字符串,也就是取反

End

  1. man:帮助命令

man 命令

原意:manual,获取指定命令的帮助

选项:

  • -f:查看命令拥有哪些级别的帮助,相当于whatis 命令这个命令
  • -级别:查看命令中指定级别的帮助,如man -5 passwd
  • -k:查看和命令相关的所有帮助,相当于apropos 命令这个命令

man的级别

  • 1:查看命令的帮助
  • 2:查看可被内核调用的函数的帮助
  • 3:查看函数和函数库的帮助
  • 4:查看特殊文件的帮助(主要是/dev目录下的文件)
  • 5:查看配置文件的帮助
  • 6:查看游戏的帮助
  • 7:查看其它杂项的帮助
  • 8:查看系统管理员可用命令的帮助
  • 9:查看和内核相关文件的帮助

End

  1. help:shell内部命令帮助

help shell内部命令

区分是否是shell内部命令,使用whereis 命令这个命令,如果找不到命令路径,则证明是shell内部命令,当然前提是命令合法可用。

  1. info:详细命令帮助

info 命令

操作:

  • 回车:进入子帮助页面(带有*号标记)
  • u:进入上层页面
  • n:进入下一个帮助小节
  • p:进入上一个帮助小节
  • q:退出

End

  1. zip:.zip格式压缩命令

zip 压缩文件名 源文件:压缩文件

zip -r 压缩文件名 源目录:压缩目录

unzip 压缩文件:解压缩

  1. gzip:.gz格式压缩命令

gzip 源文件:压缩为.gz格式的压缩文件,源文件会消失

gzip -c 源文件 > 压缩文件:压缩为.gz格式,源文件保留

gzip -r 目录:压缩目录下所有的子文件,但是不能压缩目录

gzip -d 压缩文件:解压缩

gunzip 压缩文件:解压缩

  1. bzip2:.bz2格式压缩

bzip2 源文件:压缩为.bz2格式,不保留源文件

bzip2 -k 源文件:压缩后保留源文件

bzip -d 压缩文件:解压缩,-k选项保留源压缩文件

bunzip 压缩文件:解压缩,-k选项保留源压缩文件

注意:bzip2命令不能压缩目录

  1. 查看目录下文件总行数

1
find . -name "*.java" -or -name "*.xml" -or -name "*.gradle" -or -name "*.properties" |xargs grep -v "^$"|wc -l
  1. rsync文件远程同步

1
rsync -zvrt [源路径] [目标路径]

远程路径格式:用户名@ip:文件目录,如myname@gaussli.com:/usr/local/

  1. MD5校验

1
md5sum [文件名]
  1. tar命令打包目录下部分文件

1
tar -zcvf [tar名称] `find . |grep -e [只打包文件的名称规则]`

(•̀ᴗ•́)و ̑̑

Share