原文网址:Linux--命令大全--常用命令--历史/目录/文件/输出/权限/版本信息_IT利刃出鞘的博客-CSDN博客
本文介绍Linux的一些常用命令。包括:查看历史命令、目录、文件、输出、权限、版本信息。
作用
显示历史命令
示例
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
命令 | 作用 |
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(kernel中) |
cmd1 && cmd2; | cmd1命令执行成功后,执行cmd2(kernel中) |
cmd1 ; cmd2; | cmd1命令执行完成后,执行cmd2(u-boot或kernel中) |
ctrl+z | 暂停应用程序 |
命令 | 作用 |
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 '...' | 环境变量很长时用单引号 |
其他网址
查看Linux发行版的名称及其版本号 - CoruageHe的个人空间 - OSCHINA - 中文开源技术交流社区
Linux 查看发行版本信息以及内核版本的方法(CentOS/Ubuntu) | OSETC TECH
说明
适用于所有版本。
示例
[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命令_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 输出简短的描述信息。
说明
适用与大部分版本。但centos结果可能会比较奇怪:
[root@vps ~]# cat /etc/issue \S Kernel \r on an \m
示例
Ubuntu 18.04.3 LTS \n \l
说明
适用于所有版本。
示例
[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
说明
适用于所有版本。
示例
[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