首页 > 代码库 > Linux 常用命令汇总

Linux 常用命令汇总

Linux 常用命令汇总

1、 显示日期与时间:date

  可修改显示日期格式,如:date +%Y/%m/%d %H:%M à2016/12/25 17:05(%Y:年;%m:月;%d:日;%H:24小时制;%M:分)

  date –d 参数后可加:today/yesterday/tomorrow 来显示今天、昨天、明天日期

2、 显示日历:cal(默认显示本月月历)

  cal 2001 可显示2001年整年日历;cal 10 2001 可具体显示某月月历

3、  计算器:bc

4、 Tab键:用在指令的后面为命令补全;用在目录或文件后面为档案名称补齐

5、 关机/重启指令

  shutdown –h now :立即关机

  shutdown –h +10 ‘The system will shutdown’:十分钟后关机并给出提示

  shutdown –h 22:20 :确定实际关机

  shutdown –r now :立即重启

  shutdown –r +10 ‘The system will reboot’:十分钟后重启并给所有在线用户发出讯息

  其他常用命令:reboot :系统重启;poweroff:系统关机;init 0 :系统关机

6、文件系统简单操作

  df:列出文件系统整体磁盘使用量(–h 以方便阅读的格式显示)

  du:列出当前目录下所有档案大小(–s,仅显示本目录的大小)

7、用户管理

(1)用户

  新增用户: useradd [ –u UID ] [ –g 设置群组] [ –c 说明信息] [ –d 设置家目录(如果不设置默认在/home下新建家目录)];

  设置密码:passwd  username  (已设置密码则为修改密码,普通用户可修改自己的密码,root用户可修改所有人密码);

  修改用户信息:usermod 该指令选项与useradd类似,可进行相应选项内容的修改;

删除用户:userdel username(username –r username:则连同用户家目录一同删除)

(2)群组

  新增群组:groupadd groupname

  建立群组密码:gpasswd groupname

  修改群组:groupmod groupname

  删除群组:groupdel groupname

(3)查询用户信息

  finger username :查询某用户相关账户属性;

  finger : 查询目前系统上登录用户与登入时间

  id :查询自己的Id信息

  id username :查询某用户Id信息

  w、who :查询目前系统已登录用户

(4)用户身份切换

  su :直接身份切换,不改变环境变量

  su  – :切换用户身份同时重新加载用户的环境变量,完整切换到新用户的环境

  exit :当前用户退出

  sudo  command:获取超级用户权限来执行command(使用sudo指令需要在/etc/sudoers文件中设定值,新增 username ALL=(ALL))

8、目录/文件操作

(1)目录切换cd:. 当前目录;. . 上一层目录;– 前一个工作目录;~ 当前用户的家目录

(2)pwd:显示当前所在路径

(3)mkdir:新建一个新的目录(mkdir –p /home/aaa/bbb/ccc 一次建立多层目录)

(4)rmdir:删除一个空的目录(rmdir –p /home/aaa/bbb/ccc 一次删除多层空目录)

(5)rm –r /home/aaa:删除多层不为空的目录,递归删除

(6)查看目录内容ls:–a 显示全部档案,包括隐藏档案(以.开头命名的文件);–l 长数据串显示,包含文件属性与权限信息;–d 仅列出目录,目录内部文件不列出;

(7)复制操作cp –选项 source destination

  –i:复制时若目标文件已存在询问是否覆盖

  –f:强制复制,不询问

  –s:复制为软链接(快捷方式),指向目标文件,若目标文件被删除,则无法打开

  –l:复制为硬链接

  –r:递归复制

(8)移动/更名 mv –选项 source destination

(9)修改操作权限chmod,包括文件所有者o,文件同组人g,其他人权限u,全部a

  chmod 740 filename:数字方式修改,读-4、写-2、执行-1

  chmod u+x filename:字母方式修改,读-r、写-w、执行-x,加权限用“+”,取消权限用“–”

  chmod –R u+x dirname\*:目录下所有文件修改权限

(10)修改文件的所有者chown;修改文件的所属组chgrp

(11)建立空文档touch

(12)查看文档内容:command 文件名称

  cat:由第一行开始显示文档内容;tac :从最后一行开始显示(可加选项—n 显示内容时添加行号)

  more:一页一页显示,向后翻页;less:一页一页显示,向前翻页

  head –n N:只看前N行;tail –n N:只看后N行;tail –f :动态持续查看文件内容

(13)查找文件

  which command:查找执行档,即显示查找命令所在文档的位置

  whereis filename/dirname:显示某文件或目录所在位置

  locate filename/dirname:–i 可忽略大小写  –r 可接正则,后面可输入文档的部分名称进行模糊查询

  find [PATH] [option] [action]:–name 查询的文件名(可用正则,模糊查询);–size 指出文件大小;–type 指出文件类型;–perm 指出文件权限;–exec command {}\; 额外可进行的操作

9、压缩与打包

(1)gzip [–cdtv#] filename :建立后缀为*.gz的压缩文件

  –c:将压缩数据输出到屏幕

  –d:解压缩

  –t:检查压缩文件一致性

  –v:显示出源文档与压缩文档的压缩比信息

  –#:压缩等级,-1最快,-9最慢,默认-6

(2)bzip2 [–cdkzv#] filename :建立后缀为*.bz2的压缩文件

  –k:保留源文件,不会删除原始文档

  –z:压缩参数

  –d:解压缩参数

(3)打包并压缩tar

  tar –jcvf filename.tar.bz2(destination)  filename/dirname(source):以bzip2方式压缩

  tar –zcvf filename.tar.gz(destination)  filename/dirname(source):以gzip方式压缩

  tar –jtvf filename.tar.bz2:查询压缩文件

  tar  –jxvf filename.tar.bz2 –C 欲解压目录:解压缩(bzip2方式压缩)

  tar  –zxvf filename.tar.gz –C 欲解压目录:解压缩(gzip方式压缩)

10、vi编辑器

(1)一般模式:vi打开之后直接进入的模式,在该模式下可以上下键移动光标,可以x删除字符、dd删除正行、yy复制、p粘贴处理文档内容;

  x:向后删除一个字符;X:向前删除一个字符;

  dd:删除当前行;ndd:删除当前行向下n行;d1G:删除光标所在到第一行;dG:删除光标所在到最后一行;

  yy:复制当前行;nyy:复制当前向下n行;y1G:复制光标所在到第一行;yG:复制光标所在到最后一行

  p:粘贴

  u:复原前一个动作,即撤销操作

  ctrl+r:重复执行前一个操作(也可用小数点操作)

(2)编辑模式:在一般模式中按下[i、I、o、O、a、A]后进入,按Esc键退出该模式;

  h:向左移动一个字符;j:向下移动一个字符;k:向上移动一个字符;l:向右移动一个字符;

  0:移动到当前行行首;$:移动到当前行行尾

(3)命令模式:在一般模式中输入[:、?、/ ]进入命令模式,可进行查询、字符替换、设置行号等操作;

  /word:光标向下查询word;?word:光标向上查询word;n:重复前一个搜寻动作,向下搜寻;N:重复前一个搜寻动作,向上搜寻;

  :n1,n2s/word1/word2/g:在第n1行与n2行之间寻找word1,并用word2替换;

  :1,$s/word1/word2/g:在第1行与最后一行之间寻找word1,并用word2替换;

  set nu:显示行号;set nonu:取消显示的行号

  n1,n2 w filename:将n1到n2行之间内容存储到filename文档中

  wq保存退出;q!不保存强制退出;wq!强制保存退出

11、变量相关命令

  env:查看当前shell环境下的环境变量;

  set:显示所有变量,包括环境变量;

  export:自定义变量转为环境变量;

  echo $变量名:显示变量内容;

  read 变量名:将键盘输入读取赋值给变量

  source 配置文件名:修改配置文件后执行source指令后设定才能生效

12、命令别名alias

  显示当前所有命令别名;alias xxx=’comand’ :设置命令别名;unalias xxx: 取消命令别名;只在当前shell中起作用

13、历史命令history

显示内存中所有历史命令,默认为1000条;history n:显示最近的n条执行过的命令;!N(命令号)执行history中第N条指令

14、通配符与特殊字符

(1)通配符

  *:匹配0到无穷多个任意字符;

  ?:匹配1个到无穷多个任意字符;

  []:匹配括号内任意一个字符,如[abcd]指的是匹配abcd中的一个字符;

  [-]:匹配括号中数字或字母范围内所有字符,如[0-9]指的是匹配0到9之间的所有数字;

  [^]:括号内第一个字符为^表示取反,如[^abc]指的是非a、b、c的其他字符;

(2)特殊符号

  #:注释信息

  \:还原特殊字符为一般字符

  |:管道命令

  >:重定向(覆盖);>>累加重定向

  “”:双引号具有变量置换功能

  cmd;cmd:可连续输入多条命令,用分号间隔

  cmd1 && cmd2:cmd1正确,执行cmd2;cmd1错误,不执行cmd2

  cmd1 || cmd2:cmd1正确,不执行cmd2;cmd1错误,执行cmd2

15、管道命令

(1)数据截取:cut,一般用法[ cmd | cut –d ‘分隔符’ –f n ]:以某分隔符截取前一命令的输出,并显示第n个字段

(2)行截取:grep,一般用法[ cmd | grep –a/c/i/n/v ‘搜索字符串’ ]或者[grep –a/c/i/n/v ‘搜索字符串’  filename]:从某命令结果中查找某字符串,或者从某文件中查找某字符串,显示整行

(3)排序:sort,–r反向排序;–u 相同数据仅显示一行;–t取分隔符;–k以分隔符分隔的区间后,指定区间间来进行排序

(4)记数:wc,–l显示行数;–w显示字数,英文单词;–m显示字符数

(5)tee filename:一般用在两个管道之间[ cmd1 | tee filename| cmd2 ],使前一命令的输出 输入到指定文件,同时使用后面的命令输出到屏幕上

16、定时任务crontab

(1)crontab命令

  crontab –e :进入vi编辑画面进行编辑crontab的工作内容,:wq保存退出;

  crontab –l :查看设定的crontab的工作内容;

  crontab –r :删除所有的crontab工作;

(2)定时设置

  五个时间段设置分别为:0-59分钟、0-23小时、1-31日期、1-12月份、0-7周(0、7均代表周日);

  *星号:代表任意时刻,比如:[* * * * * cmd ];

  ,逗号:代表分隔时间段,比如:每日3点、6点两个时间点执行指令[0 3,6 * * * cmd ];

  –减号:代表一段时间范围,比如:每日3点到6点两个时间范围内执行指令[0 3-6 * * * cmd ];

  /n斜线:代表每隔n个时间单位,比如:每5分钟执行[*/5 * * * * cmd ];

(3)系统的定时任务设置:/etc/crontab文件添加crontab指令

17、程序相关命令

(1)查看系统所有的程序数据:ps aux

(2)仅查看自己bash相关程序:ps –l

(3)动态查看程序变化:top –d 2 (每2秒刷新一次)

(4)终止程序:kill PID (可先用ps aux 查询程序的PID)

(5)终止程序:killall [–ieI] cmd name(后跟完整指令名称)

18、查看系统资源

  free 查看内存使用情况;uname –a 查看系统基本信息;uptime 显示系统开机多久;netsat –tlnp 显示系统已监听的网络联机及其PID

19、软件安装yum

(1)格式:[option] [查询工作项目][相关参数]

(2)–y :自动提供yes相应

(3) search:搜寻某软件

(4)list/info:列出目前yum所管理的所有软件名称与版本

(5)install:安装;update 升级;remove 删除

Linux 常用命令汇总