简介

        本文介绍Linux的一些常用命令。包括:查看历史命令、目录、文件、输出、权限、版本信息。

history

作用

显示历史命令

示例

history 10   //显示最近10条命令


参数



含义



n



打印最近n条命令                              



-c



清空当前历史命令(缓冲区);                           



-a



将历史命令缓冲区中命令写入历史命令文件中;   



-r



将历史命令文件中的命令读入当前历史命令缓冲区;



-w



将当前历史命令缓冲区命令写入历史命令文件中;  



-d<offset>



删除历史记录中第offset个命令



-n<filename>



读取指定文件


注意事项​ 

history -c只是清除了当前缓冲区的历史命令。当 Shell 退出时,就不会有历史命令追加到文件 .bash_history 中。但当重新登录到 Shell 时,Shell 便会加载文件 .bash_history,该文件中存储着曾经输入的历史命令,因此,系统的历史命令就又出现了。

解决方法:history -c; history -w

其他命令


快捷键



描述





显示上一条命令 (你在当前目录下键入的命令历史)





显示下一条命令



!!



(执行)上一条命令



ls !$



执行命令ls,并以上一条命令的参数为其参数



!n



执行命令历史列表的第n条命令



!-n



执行命令历史列表的倒数第n条命令



!-n:p



打印上一条命令(不执行)



!-n:gs/str1/str2/



将倒数第N条命令的str1替换为str2,并执行(若不加g,则仅替换第一个)



!?string?



执行含有string字符串的最新命令


!

感叹号加一个字母,执行最后一次以此字母开头的命令

简单命令

目录命令


命令



作用



cd



只输入cd然后回车,可以进入进入home目录(即~)



cd -



在最近的两个目录之间切换



pushddir



将dir压栈



popd



将本路径退出栈,并回到栈顶路径


文件命令


命令



作用



> file



创建名为file的空文件



tree



以树的形式递归显示所有文件(夹)。可以tree -L 3只显示3层文件夹



mkdir -p



创建多级目录



ln -s /etc/a /tmp/b



将/etc/a链接到/tmp/b。 只要/etc/a和/tmp/目录存在即可,会新生成/tmp/b。



ln -s /etc/a



在当前目录新建a,并将/etc/a链接到当前目录下的a。等价于:ln -s /etc/a ./



ranger



命令行浏览文件系统


输出命令


命令



作用



echo xxx



打印xxx



printf 



可像C语言一样打印信息。如:printf("%x\n",1234);(打印1234的16进制形式)


命令控制


命令



作用



cmd1| cmd2 ;



在cmd1命令的结果中再执行cmd2



cmd1 && cmd2;



cmd1命令执行成功后,执行cmd2



cmd1 ; cmd2;



cmd1命令执行完成后,执行cmd2



Ctrl+z



暂停应用程序



Ctrl+s



使终端发呆,静止,可以使快速输出的终端屏幕停下来。



Ctrl+q



退出Ctrl+s引起的发呆。



Ctrl+z



使正在运行在终端的任务,运行于后台。(可用fg恢复)



Ctrl+c



中断终端中正在执行的任务。



Ctrl+d



在空命令行的情况下可以退出终端。



Ctrl+[



相当于Esc键。



Esc键



连续按3次显示所有的支持的终端命令。



Tab键



命令、文件名等自动补全功能。


权限控制


命令



作用



whoami



查看本用户是什么:是root还是哪个user



su liu



切换到liu用户。如果只用su,默认切换到root



groups



查看本用户在哪个组。idliu也可以。


启动命令


命令



作用



reboot;



内核重启命令



shutdown -c



取消关机。还可以试试pkill shutdown


其他


命令



作用



ldd;



列出可执行文件所依赖的动态库。如:lddhello



reset;



u-boot重启命令



setenv bootargs



清除环境变量(以bootargs为例)



setenv bootargs '...'



环境变量很长时用单引号


查看发行版本

cat /proc/version

说明

适用于所有版本。

示例

[root@vps ~]# cat /proc/version 
Linux version 3.10.0-514.26.2.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) ) #1 SMP Tue Jul 4 15:04:05 UTC 2017

lsb_release

其他网址

​lsb_release命令_Linux lsb_release 命令用法详解:显示发行版本信息​

说明

这个命令基本适用于所有其它的linux发型版本(除了redhat和centos等) 。

centos和redhat可能没有这个命令/文件。可通过此命令查看版本:cat /etc/redhat-release

示例 

lsb_release -a

也可以

cat /etc/lsb-release

结果示例:

LSB Version:  :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.3.1611 (Core)
Release: 7.3.1611
Codename: Core

说明 

LSB是Linux Standard Base的缩写,​lsb_release命令​用来显示LSB和特定版本的相关信息。如果使用该命令时不带参数,则默认加上-v参数。

-v 显示版本信息。
-i 显示发行版的id。
-d 显示该发行版的描述信息。
-r 显示当前系统是发行版的具体版本号。
-c 发行版代号。
-a 显示上面的所有信息。
-h 显示帮助信息。

        如果当前发行版是LSB兼容的,那么/etc/lsb_release文件中会包含LSB_VERSION域。这个域的值可以是用冒号隔开的一系列支持的模块。这些模块名是当前版本支持的LSB的模块名。如果当前版本不是LSB兼容的,就不要包含这个域。

        可选的域包括DISTRIB_ID, DISTRIB_RELEASE, DISTRIB_CODENAME,DISTRIB_DESCRIPTION,它们可以覆盖/etc/distrib-release文件中的内容。注:这里的distrib要替换为当前的发行版的名字。如果存在/etc/lsb-release.d目录,会在该目录中查找文件名并作为附加的模块版本加在LSB_VERSION前面。文件/etc/distrib-release中包含了一些描述信息,用来说明应该分析哪些文件名。

         一般的格式是Distributor release x.x (Codename)  注意:Debian系统中缺乏相应的描述信息(见/etc/debian-version),为了支持Debian系统,大部分信息都被加在了lsb-release文件中。

        redhat和fedora系统中,还支持一个参数:-s, --short 输出简短的描述信息。

cat /etc/issue

说明

适用与大部分版本。但centos结果可能会比较奇怪:

[root@vps ~]# cat /etc/issue
\S
Kernel \r on an \m

示例

Ubuntu 18.04.3 LTS \n \l

查看内核版本

cat /proc/version

说明

适用于所有版本。

示例

[root@vps ~]# cat /proc/version 
Linux version 3.10.0-514.26.2.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC) ) #1 SMP Tue Jul 4 15:04:05 UTC 2017

uname -a

说明

适用于所有版本。

示例

[root@localhost ~]# cat /proc/version
Linux version 2.6.32-696.16.1.el6.x86_64 (mockbuild@c1bl.rdu2.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-18) (GCC) ) #1 SMP Wed Nov 15 16:51:15 UTC 2017

其他网址

查看Linux发行版的名称及其版本号 - CoruageHe的个人空间 - OSCHINA -

Linux 查看发行版本信息以及内核版本的方法(CentOS/Ubuntu) | OSETC TECH