Linux命令众多,当不清楚一个命令的使用方法时,我们该怎样了解命令的属性和帮助?
 
 
1.用type命令了解一个命令的属性
[root@zejin240 testdir]# type cd
cd is a shell builtin
[root@zejin240 testdir]# type rm
rm is aliased to `rm -i'
[root@zejin240 testdir]# type mysql
mysql is /opt/lamp/mysql/bin/mysql
cd属于linux的内置命令,可以用man type查看所有的内置命令,rm是我们设置的一个别名,mysql是一个外部命令
 
 
2.用which命令查看命令的全路径在哪
[root@zejin240 testdir]# which mkdir
/bin/mkdir
[root@zejin240 testdir]# which mysql
/opt/lamp/mysql/bin/mysql
[root@zejin240 testdir]# which cp
alias cp='cp -i'
/bin/cp
 
 
3.用whatis命令来查看命令的简要信息
[root@zejin240 testdir]# whatis rm
rm (1p) - remove directory entries
rm (1) - remove files or directories
[root@zejin240 testdir]# whatis passwd
passwd (1) - update user's authentication tokens
passwd (5) - password file
passwd [sslpasswd] (1ssl) - compute password hashes
 
 
 
3.对于内置命令,我们可以用help command来获取命令帮助信息
[root@zejin240 testdir]# help exit
exit: exit [n]
Exit the shell.
 
Exits the shell with a status of N. If N is omitted, the exit status
is that of the last command executed.
 
内置命令有哪些,再强调一次,用man type命令可以查看得到
 
 
4.对于非内置命令,一般可以用command --help来获取帮助信息
[root@zejin240 testdir]# mysql --help
mysql Ver 14.14 Distrib 5.7.12, for linux-glibc2.5 (x86_64) using EditLine wrapper
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
……
-e, --execute=name Execute command and quit. (Disables --force and history
file.)
-E, --vertical Print the output of a query (rows) vertically.
-f, --force Continue even if we get an SQL error.
……
 
 
5.对于非内置命令,也可以用man command命令查看
[root@zejin240 tmp]# man pwd
     
在弹出的页面中,左上角为其章节,man总共有8个章节,还记得上面提到的whatis命令么,命令显示出来的括号里面的1、1p、5是man和页面中的章节对应的。
那么man命令里面的8个章节都有特定的描述规定,它们分别是
第一章节:描述用户命令的使用方法
第二章节:描述系统调用的使用方法
第三章节:描述C的库函数使用方法
第四章节:描述设备及特殊文件
第五章节:描述配置文件的格式及约定
第六章节:描述游戏信息
第七章节:描述其它杂项
第八章节:描述系统管理工具及后台进程
 
这八个章节的描述可以用man man查看得到。
 
如果用man command进去的话会显示第一个它搜索到的章节,那像上面提到的passwd命令,我们知道它有第五章节,那怎么进去呢?
用:man 5 passwd即可,类似的还有man 1p rm
我们知道passwd命令对应的是/etc/passwd,所以它对应的就是此文件的介绍,每个字段对应的是什么含义,如下,可以打开/etc/passwd文件和下面的描述对应看看
       
类似的,man 5 shadow,描述的是/etc/shadow文件的格式介绍。
 
 
6.用info command查看
  主要是一些命令的历史介绍,平时很少用到
 
建议:
  多用help命令及man,英文不懂也要硬着看,甚至比去各种搜索都还强悍,而且这也是最官方,最权威的解读。
 
 
 
 
 

linux全方位掌握一个命令--思路比方法更重要的更多相关文章

  1. 显示器 Linux 性能 18 (一个命令行工具传递)

    对于系统和网络管理员来说每天监控和调试Linux系统的性能问题是一项繁重的工作.在IT领域作为一名Linux系统的管理员工作5年后,我逐渐认识到监控和保持系统启动并执行是多么的不easy.基于此原因. ...

  2. Linux平台不同解压缩命令的使用方法

    作者:郭孝星 微博:郭孝星的新浪微博 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells github:https://github.co ...

  3. linux中判断一个命令是否执行成功

    每一条基本命令执行后都有一个返回码,该返回码是用$?表示,执行成功的返回码是0,例如:if [ $? -ne 0 ];then 上一命令执行失败时的操作else 上一命令执行成功时的操作fi例如lin ...

  4. 都能看懂的嵌入式linux/android alsa_aplay alsa_amixer命令行使用方法

    前几天在嵌入式linux上用到alsa command,网上查的资料多不给力,仅仅有动手一点点查,最终能够用了,将这个用法告诉大家,以免大家少走弯路. 0.先查看系统支持哪几个alsa cmd: ll ...

  5. Linux的管理类命令及其使用方法

    文件操作相关有一些命令可以帮助我们"修剪"之前看到的文件树. $touch a.txt 如果a.txt不存在,生成一个新的空文档a.txt.如果a.txt存在,那么只更改该文档的时 ...

  6. Linux中的一个命令行计算器bc简介

    假如你在一个图形桌面环境中需要一个计算器时,你可能只需要一路进行点击便可以找到一个计算器.例如,Fedora 工作站中就已经包含了一个名为 Calculator 的工具.它有着几种不同的操作模式,例如 ...

  7. Linux下知道一个命令却不知道哪个包提供(解决)

    [root@localhost ~]# yum -y install jstack (1/2): epel/x86_64/primary_db | 6.8 MB 00:00:16 (2/2): epe ...

  8. 如何在Linux启动的时候执行一个命令

    在Linux启动起来时,执行一个命令的设置方法== 例如:需要执行的命令是cvslockd ============第一种方式:根据运行级别配置======================== 第一步 ...

  9. Linux如何创建一个新进程

    2016-03-31 张超<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 Linux如何创建一个新进程 ...

随机推荐

  1. 文件过滤驱动框架Minispy解析一

    因工作需要,研究minispy文件过滤框架,上图为我整理出的其内核部分代码的逻辑.

  2. Hbuilder开发HTML5 APP之创建子页面

    折腾了好久,终于看明白怎么创建了: 1.创建个html5的mui页面,在其初始化方法中: mui.init({   subpages:[{    id:"list",   url: ...

  3. SQL Server2016 新功能实时查询统计信息

    SQL Server2016 新功能实时查询统计信息 很多时候有这样的场景,开发抱怨DBA没有调优好数据库,DBA抱怨开发写的程序代码差,因此,DBA和开发都成为了死对头,无法真正排查问题. DBA只 ...

  4. Css 动画的回调

    在做项目中经常会遇到使用动画的情况.以前的情况是用js写动画,利用setTimeout函数或者window.requestAnimationFrame()实现目标元素的动画效果.虽然后者解决了刷新频率 ...

  5. 轻量级ORM框架初探-Dapper与PetaPoco的基本使用

    一.EntityFramework EF是传统的ORM框架,也是一个比较重量级的ORM框架.这里仍然使用EF的原因在于为了突出轻量级ORM框架的性能,所谓有对比才有更优的选择. 1.1 准备一张数据库 ...

  6. 借助 Lucene.Net 构建站内搜索引擎(下)

    前言:上一篇我们学习了Lucene.Net的基本概念.分词以及实现了一个最简单的搜索引擎,这一篇我们开始开发一个初具规模的站内搜索项目,通过开发站内搜索模块,我们可以方便地在项目中集成站内搜索功能.本 ...

  7. iOS开发系列--C语言之数组和字符串

    概览 数组在C语言中有着特殊的地位,它有很多特性,例如它的存储是连续的,数组的名称就是数组的地址等.而在C语言中是没有String类型的,那么如果要表示一个字符串,就必须使用字符数组.今天主要就介绍如 ...

  8. Tomcat7基于Redis的Session共享实战二

    目前,为了使web能适应大规模的访问,需要实现应用的集群部署.集群最有效的方案就是负载均衡,而实现负载均衡用户每一个请求都有可能被分配到不固定的服务器上,这样我们首先要解决session的统一来保证无 ...

  9. 《Entity Framework 6 Recipes》中文翻译系列 (43) ------ 第八章 POCO之使用POCO加载实体

    翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 8-2  使用POCO加载关联实体 问题 你想使用POCO预先加载关联实体. 解决方 ...

  10. SQL Server ErrorLog

    SQL Server 使用ErrorLog记录SQL Server启动和运行过程中的信息,具体信息参考:<SQLSERVER errorlog讲解>.通常来说,ErrorLog是指SQL ...