Liunx常用系统命令大全

所有命令格式:命令名称 [命令参数] [命令对象]
所有命令:- -help可查看帮助

(1)man

可用于查看命令的具体可用参数与对象格式等等;
如: man man,man ls,man cat,man reboot等;

(2)echo

命令用于在终端显示字符串或变量,格式为:“echo [字符串 | 变量]”,可打印字符串和打印变量值等,如:echo $SHELL

(3)date和cal

date命令用于显示/设置系统的时间或日期,cal命令用于显示日历,如cal,cal 10,cal 10 2018,cal 2018等;

(4)reboot

reboot命令用于重启系统(仅root用户可以使用);

(5)ifconfig

用于获取网卡配置与网络状态等信息:格式为”ifconfig [网络设备] [参数]”;

(6)uname

命令用于查看系统内核版本等信息,格式为:“uname [-a]”等;

(7)uptime和free

uptime命令用于查看系统的负载情况,格式为:“uptime”,
free命令用于显示当前系统中内存的使用量情况,格式为:“free [-m/-g]”等;

(8)who、last、history

who命令用于查看当前登入主机的用户情况,格式为:”who [参数]”,
last命令用于查看所有系统的登入记录,格式为:”last [参数]”,
history命令用于显示历史执行过的命令,格式为:“history”;

(9)pwd、cd、ls

pwd命令用于显示当前的工作目录,格式为:“pwd”,
cd命令用于切换工作路径,格式为:“cd [目录名称]”,
ls命令用于查看目录中有那些文件,格式为:“ls [选项] [文件] ”,如:ls -al等;

(10)cat、more、head、tail

cat

查看文件:cat命令用于查看纯文本文件(较短的),格式为:“cat [选项] [文件]”(-n 显示行号);

创建文件:cat >文件名称<<文件结束标志
创建文件的时候要设置文件结束标志,当文件内容写完之后要输入你设置的结束标志,如果想要在file文件里面追加的话,就把“>”变成“>>”,其中“>”表示重定向,不过要先清空内容,“>>”表示追加;

合并文件:cat 文件1 文件2……>文件
将文件1,文件2等要合并的文件重新合并到文件里面;

more

more命令用于查看纯文本文件(较长的),格式为:“more [选项] 文件”,
more命令类似于cat命令,不过 more 不是一次性的把所有内容都显示到屏幕上,而是一页一页的显示方便读者阅读;

head命令用于查看纯文本文档的前N行,格式为:“head [选项] [文件]”(-n 10 显示10行);

tail

tail命令用于查看纯文本文档的后N行,格式为:“tail [选项] [文件]”(-n 10 显示后面的10行);

(11)wc

wc命令用于统计指定文本的行数、字数、字节数,格式为“wc [参数] 文本”
-l 只显示行数
-w 只显示单词数
-c 只显示字节数

(12)diff

diff命令用于比较多个文本文件的差异,格式为:”diff [参数] 文件”
-b 忽略空格引起的差异。
-B 忽略空行引起的差异。

(13)touch、mkdir

linux下新建文件的方式有非常多,比如:使用vi新建文件、使用cp命令拷贝一个文件、使用cat创建文件,可是最经常使用的还是使用touch命令新建一个文件。

touch命令用于创建空白文件与修改文件时间,格式为:“touch [选项] [文件]”
-a 近修改“访问时间”(atime)
-m 近修改“更改时间”(mtime)
-d 同时修改atime与mtime
-t timestamp:改变访问时间和改动时间为timestamp

mkdir用于创建空白的文件夹,格式为:“mkdir [选项] 目录”
-p 连续创建多层目录(若文件夹已存在则忽略)
-v 显示创建的过程

(14)cp、mv、rm

cp命令用于复制文件或目录,格式为:“cp [选项] 源文件 目标文件”
-p 保留原始文件的属性
-d 若对象为”链接文件”,则保留该”链接文件”的属性
-r 递归持续复制(用于目录)
-i 若目标文件存在则询问是否覆盖
-a 相当于-pdr(p,d,r为上述的参数)

mv命令用于移动文件或改名,格式为:“mv [选项] 文件名 [目标路径|目标文件名]

mv命令用于移动文件或改名,格式为:“mv [选项] 文件名 [目标路径|目标文件名]”
-f 忽略警告信息
-i 删除前先询问
-r 删除文件夹

(15)tar

tar命令用于对文件打包压缩或解压,格式为:“tar [选项] [文件]”

打包并压缩文::“tar -czvf 压缩包名.tar.gz 文件名”
解压并展开压缩包:“tar -xzvf 压缩包名.tar.gz”

-c 创建压缩文件
-x 解开压缩文件
-t 查看压缩包内有那些文件
-z 用Gzip压缩或解压
-j 用bzip2压缩或解压
-v 显示压缩或解压的过程
-f 目标文件名
-p 保留原始的权限与属性
-P 使用绝对路径来压缩
-C 指定解压到的目录

(16)grep、find

grep命令用于对文本进行搜索,格式为:“grep [选项] [文件]”

-r 循环查找
-i 忽略大小写
-n 显示行号

find命令用于查找文件,格式为:“find [查找路径] 寻找条件 操作”
-name 匹配名称

(17)vim

(1)VIM编辑器,可以新建文件也可以修改文件,命令为:vim /usr/local/con.cfg
(2)进入编辑器后,我们先按”I”,即切换到“插入”状态
(3)文本编辑结束之后,通常需要退出编辑器。退出编辑器又分为4种情况:保存退出、正常退出、不保存退出及强制退出

先按ESC键
- 保存退出——:wq(或者:x,又或者按了ESC后直接按shift+zz)
- 正常退出——:q
- 不保存退出——:q!
- 强制退出——:!

(18)Liunx系统目录结构

Liunx常用系统命令大全_第1张图片

  • /bin:bin是Binary的缩写, 这个目录存放着最经常使用的命令。
  • /boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
  • /dev :dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。
  • /etc:这个目录用来存放所有的系统管理所需要的配置文件和子目录。
  • /home:用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
  • /lib:这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
  • /lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
  • /media:linux系统会自动识别一些设备,例如U盘、光驱等等,当识别后,linux会把识别的设备挂载到这个目录下。
  • /mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。
  • /opt: 这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
  • /proc:这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。
  • /root:该目录为系统管理员,也称作超级权限者的用户主目录。
  • /sbin:s就是Super User的意思,这里存放的是系统管理员使用的系统管理程序。
  • /srv:该目录存放一些服务启动之后需要提取的数据。
  • /tmp:这个目录是用来存放一些临时文件的。
  • /sys: 这是linux2.6内核的一个很大的变化,该目录下安装了2.6内核中新出现的一个文件系统 sysfs 。
  • /usr:这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。
  • /usr/bin:系统用户使用的应用程序。
  • usr/sbin:超级用户使用的比较高级的管理程序和系统守护程序。
  • /usr/src:内核源代码默认的放置目录。
  • /var:这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。

在linux系统中,有几个目录是比较重要的,平时需要注意不要误删除或者随意更改内部文件。
(1)/etc: 上边也提到了,这个是系统中的配置文件,如果你更改了该目录下的某个文件可能会导致系统不能启动。
(2)/bin, /sbin, /usr/bin, /usr/sbin: 这是系统预设的执行文件的放置目录,比如 ls 就是在/bin/ls 目录下的。
值得提出的是,/bin, /usr/bin 是给系统用户使用的指令(除root外的通用户),而/sbin, /usr/sbin 则是给root使用的指令。
(3)/var: 这是一个非常重要的目录,系统上跑了很多程序,那么每个程序都会有相应的日志产生,而这些日志就被记录到这个目录下,具体在/var/log 目录下,另外mail的预设放置也是在这里。

(19)管道符和重定向

(1)管道命令符“|”的作用是将前一个命令的标准输出当作后后一个命令的标准输入,格式为“命令A|命令B”;

注意:管道命令符不只可以使用一次,还可以:命令1|命令2|命令3;

(2)输入输出重定向

标准输入(STDIN,文件描述符为0):默认从键盘输入,为0时表示是从其他文件或命令的输出。
标准输出(STDOUT,文件描述符为1):默认输出到屏幕,为1时表示是文件。
错误输出(STDERR,文件描述符为2):默认输出到屏幕,为2时表示是文件。

对于输出重定向符有这些情况:
符号                作用
命令 > 文件         将标准输出重定向到一个文件中(清空原有文件的数据)
命令 2> 文件        将错误输出重定向到一个文件中(清空原有文件的数据)
命令 >> 文件        将标准输出重定向到一个文件中(追加到原有内容的后面)
命令 2>> 文件       将错误准输出重定向到一个文件中(追加到原有内容的后面)
命令 >> 文件 2>$1   将标准输出与错误输出共同写入到文件中(追加到原有内容的后面)
对于输入重定向有这些情况:
符号                    作用
命令 < 文件              将文件作为命令的标准输入
命令 << 分界符           从标准输入中读入,直到遇见“分界符”才停止
命令 < 文件1 > 文件2      将文件1作为命令的标准输入并将标准输出到文件2

几个例子:

将man命令的帮助文档写入到/root/man.txt中:
[root@linux ~]# man bash > /root/man.txt

向readme.txt文件中写入一行文字:
[root@linux ~]# echo "Welcome to LinuxProbe.Com" > readme.txt

向readme.txt中追加一行文字:
[root@linux ~]# echo "Quality linux learning materials" >> readme.txt

把readme.txt文件作为输入重定向给wc -l命令来计算行数,命令等同于“cat readme.txt | wc -l”。
[root@linux ~]# wc -l < readme.txt

将查看xxxxxx目录命令的错误信息输出到/root/stderr.txt文件中:
[root@linux ~]# ls xxxxxx 2> /root/stderr.txt

(20)通配符和别名

*   匹配零个或多个字符。
?   匹配任意单个字符。
[0-9]   匹配范围内的数字。
[abc]   匹配已出的任意字符。

alias命令用于设置命令的别名,格式为:“alias 别名=命令”(alias cp=”cp -i”),
unalias命令用于取消命令的别名,格式为:“unalias 别名”;

(21)文件权限

Liunx常用系统命令大全_第2张图片

我们在用ll命令查看一个文件的信息时,分为7段:

(1)第一段中为10个字母,第一个字母代表文件的类型(-:普通文件,d:目录文件,l:链接文件,b:块设备文件,c:字符设备文件,p:管道文件)
Liunx常用系统命令大全_第3张图片
(2)第二段是文件的链接数
(3)第三段是文件的属主
(4)第四段是文件的属组(具有相同权限的用户组成的逻辑单元)
(5)第五段是文件的大小
(6)第六段是文件最后的修改时间
(7)第七段是文件的名字

设置文件权限:
(1)chomd [who] [+,-,=] [mode]文件
-R:递归修改目录文件的权限
-v:显示指令执行过程

who可取u|g|o|a (u:拥有者,g:拥有者同组用户,o:其它用户
,a:所有用户
)
+| - | = 分别表示增加 减少 等于(相应的权利)
mode 可取 r,w,x

实例:
chmod u+x file.c
chmod o-r file.c
chmod g+x file.c

(2)chmod【mode】文件名
chomd 777 file 将file的文件权限设置为777

设置文件拥有者:
格式:chown [参数] 用户名 文件名

实例:chown root file.c

你可能感兴趣的:(Liunx)