阿牧路泽

哪有那么多坚强,无非是死扛罢了
  博客园  :: 首页  :: 新随笔  :: 联系 :: 管理

1、Linux常用命令大全

Posted on 2018-03-07 21:34  阿牧路泽  阅读(190)  评论(0编辑  收藏  举报

Linux常用命令大全

一、显示日期的指令:date

  指令格式:1、date 
       2、date +%y/%m/%d 
       3、date +%h:%m

二、显示日历的指令:cal

  指令格式:1、cal 
       2、cal 2008
       3、cal 10 2008

三、重要的几个热键

  1、tab---命令不全
  2、ctrl+c---停止当前程序
  3、ctrl+d --- exit

四、惯用的关机指令:shutdown

  1、shutdown -t sec:-t后面加秒数,指过几秒后关机
  2、shutdown -k: 不是真的要关机,只是发送警告讯息出去
  3、shutdown -r;在将系统的服务停掉之后就重新启动
  4、shutdown -h;将系统的服务停掉后,立即关机

五、改变文件拥有者:chown

1   chown [-R] 帐号名称档案或目录
2   chown [-R] 帐号名称:组名 档案或目录
3   参数:
4     -R:递归式改变指定目录及其下的所有子目录和文件的拥有者
5     -v:显示chown命令所做的工作

【示例】

  chown bin install.log//将install.log的拥有者改为bin这个帐号
  chown root:root aa -R//将aa这个目录中所有文件的所有者和所有组改为root

六、改变文件的权限:chmod

文件权限 “-rw-r--r--”这10位代表的含义如下:

第一位表示文件类型(常见的文件类型如下):

1     - 文件
2     d 目录
3     | 软连接文件

第(2-4)位表示文件所有者u的权限,第(5-7)位表示文件所属组g的权限,第(8-10)为表示其他人o的权限。a表示(u+g+o)

文件权限:

1     r:读 ~ 4
2     w:写 ~ 2
3     x:执行 ~ 1

  权限的设定方法有两种,分别可以使用数字或者是符号来进行权限的变更

  1、数字类型改变档案权限

1   chmod 777 .bashrc//.bashrc文件的所有者、所属组及其他人都拥有读写执行权限

  2、符号类型改变档案权限:

1     chmod a+x .bashrc//给u、g、o的权限都设置为x

七、查看版本信息

  uname -r

八、变换目录

1   cd [相对路径或者绝对路径]
2   一些特殊的用法:
3     cd ..    返回当前的上层目录
4     cd       返回根目录

九、显示当前所在的目录:pwd

  pwd -P显示正确的完整路径,而不会以连结文件的数据显示

十、建立新目录:mkdir

1     mkdir [-mp] 目录名称
2     -m:配置文件案的权限,直接设定,不需要看预设权限
3     -p:帮助你直接将所需要的目录(包含上层目录)递归的建立起来
4     eg:mkdir test
5       mkdir -p test1/test2/test3
6       mkdir -m 711 test2

十一、删除【空】的目录rmdir

1   rmdir [-p] 目录名称
2    -p:连同上一层【空的】目录也一起删除
3   rmdir test
4   rmdir -p test1/test2/test3

十二、档案目录的显示:ls

 1   ls [-aAdfFhilnrRSt] 目录名称
 2   ls [--color={never,auto,always}] 目录名称
 3   ls [--full-time] 目录名称
 4   选项与参数:
 5   -a:全部的档案,连同隐藏档(开头为.的档案)一起列出来(常用)
 6   -A:全部的档案,连同隐藏档,但不包括.与..这两个目录
 7   -d:仅列出目录本身,而不是列出目录内的档案数据(常用)
 8   -f:直接列出结果,而不进行排序(ls预设会以档名排序)
 9   -F:根据档案、目录等信息,给与附加数据结构,例如:*代表可执行文件;/待变socket档案; |代表FIFO档案
10   -h:将档案容量以人类较易读的方式列出来
11   -i:列出inode号码
12   -l:长数据串行粗,包含档案的属性与权限等等数据(常用)
13   -n:列出UID和GID而非使用者与群组的名称
14   -r:将排序结果反向输出,例如:原本档案名由小到大,反向则由大到小
15   -R:连同子目录一起列出来,等于该目录下的所有档案都会显示出来
16   -S:以档案容量大小排序,而不是用档案排序
17   -t:依时间排序,而不是用档名
18   --color=never:不要一句档案特定性给与颜色显示
19   --color=always:显示颜色
20   --full-提么:以完整时间模式(包括年、月、日、时、分)输出
21   --time={atime,ctime}:输出access时间或改变权限属性时间(ctime),而非内容变更时间(modification time)

十三、复制档案或目录:cp

 1   cp [-adfilprsu] 来源文件(source) 目标文件(destination)
 2   cp [options] source1 source2 source 3 ... directory
 3     -a:相当于-pdr的意思
 4     -d:若来源文件为链接文件的属性(link file),则复制链接文件属性而非档案本身
 5     -f:为强制(force)的意思,若目标档案已经存在且无法开启,则移除后再尝试一次
 6     -i:若目标文件(destination)已经存在时,在覆盖时会先询问动作的进行(常用)
 7     -l:进行硬件连结(hard link)的连结档建立,而非复制档案本身
 8     -p:连同档案的属性一起复制过去,而非使用默认属性(备份常用)
 9     -r:递归持续复制,用于目标的复制行为(常用)
10     -s:复制成为符号链接文件(symbolic link),亦即[快捷方式]档案
11     -u:若destination比source旧才更新destination

【示例】

1     cp ~/bashrc /tmp/bashrc
2     cp -i ~bashrc /tmp/bashrc
3     cp -a /var/log/wtmp wtmp_2
4     cp /etc/ /tmp
5     cp -r /etc/ /tmp

十四、移除档案或目录

1   rm [-fir] 档案或目录
2   -f:就是强制(force)的意思,忽略不存在的档案,不会出现警告讯息
3   -i:互动模式,在删除前会询问使用者是否动作
4   -r:递归删除,最常用在目录的删除了

【示例】

1     rm -i bashrc
2     rm -r /tmp/etc

十五、移动档案或目录,或更名:mv

1 mv [-fiu] source destination
2 mv [options] source1 source2 source3 ... directory
3   -f:force强制的意思,如果目标档案已经存在,不回询问而直接覆盖
4   -i:若目标档案(destination)已经存在时,就会询问是否覆盖
5   -u:若目标档案已经存在,且source比较新,才会更新(update)

【示例】

mv bashrc mvtest

十六、由第一行显示档案内容:cat

1 cat [-AbEnTv]
2   -A:相当于-vET的整合选项,可列出一些特殊字符而不是空白而已
3   -b:列出行号,仅针对非空白行做出行号显示,空白行不标行号
4   -E:将结尾的断行字符$显示出来
5   -n:打印出行号,连同空白行也会有行号,与-b选项不同
6   -T:将【tab】按键以^I显示出来
7   -v:列出一些看不出来的特殊字符

【示例】

1         cat /etc/issue
2         cat -n /etc/issue
3         cat -A /etc/xinetd.conf        

十七、显示的时候,顺道输出行号:nl

1 nl [-bnw] 档案
2   -b:指定行号指定的方式,主要有两种
3     -b a:表示不论是否为空行,也同样列出行号(类似cat -n)
4     -b t:如果有空行,空的那一行不要列出行号(默认值)
5   -n:列出行号表示的方法,主要有三种:
6     -n ln:行号在屏幕的最左方显示
7     -n rn:行号在自己字段的最右方显示,且不加0
8     -n rz:行号在自己字段的最右方显示,且加0
9   -w:行号字段的占用的位数

【示例】

1        nl /etc/issue //空行不显示行号
2     nl -b a /etc/issue  //空行也显示行号
3     nl -b a -n rz //显示行号,在在行号前自动补上0,默认的预设字段是六位数,如果想要改成3位,则如下
4     nl -b a -n rz -w 3 /etc/issue

十八、一页一页的显示档案内容:more

1   空格键(space):代表向下翻一页
2   Enter              :代表向下翻一行
3   /字符串:代表在这个显示的内容中,向下搜寻“字符串”这个关键词
4   :f  :立刻显示出文件名以及目前显示的行数
5   q:代表立刻离开more,不再显示该档案内容
6   b或者ctrl-b:代表往回翻页,不过这个动作只对档案有用,对管线无用

【示例】

more /etc/man.config

十九、与more类似,但是比more更好的是,它可以往前翻页:less

1       空格键(space):代表向下翻一页
2   [pagedown]:向下翻一页
3   [pageup]:向上翻一页
4   /字符串:代表在这个显示的内容中,向下搜寻“字符串”这个关键词
5   ?字符串:代表在这个显示的内容中,向上搜寻“字符串”这个关键词
6   n:重复前一个搜寻
7   N:反向重复前一个搜寻
8   q:离开less这个程序

【示例】

less /etc/man.config

 二十、只看头几行:head

1 head [-n number] 档案
2   -n:后面接数字,代表显示几行的意思

【示例】

1 head /etc/man.config  //默认显示10行
2 head -n 20 /etc/man.config  //显示20行

二十一、只看尾几行:tail

1 tail [-n number] 档案
2   -n:后面接数字,代表显示几行的意思
3   -f:表示持续侦测后面所接的档名,要等到按下Ctrl+c才会结束tail的zhence

【示例】

1        tail /etc/man.config
2     tail -n 20 /etc/man.config
3     tail -f /var/log/messages

二十二、以二进制的方式读取档案内容:od

1 od [-t TYPE] 档案
2      -t:后面可以接各种【类型(TYPE)】的输出,例如:
3     a:利用默认的字符来输出
4     c:利用ASCII字符来输出
5     d[size]:利用十进制(decimal)来输出数据,每个数占用size bytes;
6     f[size]:利用浮点数(floating)来输出数据,每个数占用size btyes;
7     o[size]:利用八进制(octal)来输出数据,每个数占用size bytes;
8     x[size]:利用十六进制(hexadecimal)来输出数据,每个数占用size bytes;

二十三、修改档案时间或新建档案:touch

1  touch [-acdmt] 档案
2   -a:仅修订access time 
3   -c:仅修改档案的时间,若该档案不存在则不建立新档案
4   -d:后面可以接欲修订的日期而不用目前的日期,也可以使用--date=“日期或时间”
5   -m:仅修改mtime
6   -t:后面可以接欲修订的时间而不用目前的时间,格式为[YYMMDDhhmm]

二十四、观察文件类型:file

  file ~/.bashrc

二十五、寻找(执行文档):which

1 which [-a] command
2   -a:将所有有PATH目录中可以找到的指令均列出,而不止第一个被找到的指令名称

二十六、寻找特定档案:locate

1 locate [-ir] keyword
2   -i:忽略大小写的差异
3   -r:后面可接正则表示法的显示方式

二十七、寻找特定档案:find

find [PATH] [option] [action]
  1.与时间有关的选项:-atime,-ctime,与-mtime
    以-mtime为例:
    -mtime n:n为数字,意义为在n天之前的(某天)被更动过内容的档案
    -mtime +n:列出在n天之前(不含n天本身)被更动过内容的档案
    -mtime -n:列出在n天之内(含n天)被更动过内容的档案
    -newer file:file为一个存在档案,列出比file还要新的档案名

二十八、压缩文件和读取文件压缩文件:tar

1   tar [-j|-z] [cv] [-f 建立的档名] filename    //打包与压缩
2   tar [-j|-z] [tv] [-f 建立的档名]       //查看档名
3   tar [-j|-z] [xv] [-f 建立的档名] [-C 目录]
4   最简单的使用tar就只要记忆以下方式即可:
5     压缩:tar -jcv -v filename.tar.bz2 要被压缩的档案或目录名称
6     查询:tar -jtv -f filename.tar.bz2
7     解压缩:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录

二十九、grep命令

  根据内容检索

grep [option] PATTERN [FILE ...]

 在指定文件中搜索特定的内容,并将含有这些内容的行输出到标准输出。若不指定文件名,则从标准输入读取。
 [options]部分包含的主要参数:

1 -c:只输出匹配行的计数。
2 -I:不区分大小写(只适用于单字符)。
3 -h:查询多文件时不显示文件名。
4 -l:查询多文件时只输出包含匹配字符的文件名。
5 -n:显示匹配行及行号。
6 -s:不显示不存在或无匹配文本的错误信息。
7 -v:显示不包含匹配文本的所有行。
8 -R: 连同子目录中所有文件一起查找。

  比如到系统头文件目录下查找所有包含printf的文件

grep "printf" /usr/include -Rn

三十、ps命令

ps [options]

ps命令用于监控后台进程的工作情况,因为后台进程是不和屏幕键盘这些标准输入/输出设备进行通信的,所以如果需要检测其情况,便可以使用ps命令了。选项部分如下:

1 -e 显示所有进程。
2 -f 全格式。
3 -h 不显示标题。
4 -l 长格式。
5 -w 宽输出。
6 a 显示终端上的所有进程,包括其他用户的进程。
7 u 以用户为主的格式来显示程序状况。
8 r 只显示正在运行的进程。
9 x 显示没有控制终端的进程。

这个命令参数有很多,但一般的用户只需掌握一些最常用的命令参数就可以了。 最常用的三个参数是u、a、x。

三十一、wc命令

利用 wc 指令我们可以计算文件的 Byte 数、字数、或是列数,若不指定文件名称、或是所给予的文件名为“-”,则 wc 指令会从标准输入设备读取数据。

1 wc -l ./*

  -c 或–bytes 或–chars 只显示 Bytes 数。
  -l 或–lines 只显示行数。
  -w 或–words 只显示字数。

【实例】

wc hello.c 

【显示结果】

三十二、查看机器硬件设置命令

1   lspci
2   lspci | grep VGA

暂时归纳到这,以上只是一些常用,但是又容易忘记其规则和说明的命令(linux中的命令众多,但是我们只是用到其中的一小部分),欢迎各位在评论区补充。

 更多命令详解参见:https://blog.csdn.net/shengxia1999/article/category/6325488/1