linux学习8 运维基本功-Linux获取命令使用帮助详解
一、Linux基础知识
1、人机交互界面:
a、GUI
b、CLI:[login@hostname workdir]# COMMAND
2、命令知识
通用格式:# COMMAND OPTIONS ARGUMENTS
a、发起一个命令:请求内核将某个二进制程序运行为一个进程:
程序 --> 进程
静态 --> 动态(有生命周期)
b、命令本身是一个可执行的程序文件:二进制格式的文件,有可能会调用共享库文件,多数程序文件都存放在:/bin,/sbin,/usr/bin,/usr/sbin,/usr/local/bin,/usr/local/sbin
普通命令:/bin,/sbin,/usr/bin,/usr/sbin
管理命令:/usr/local/bin,/usr/local/sbin
c、共享库:如果是32位linux操作系统那么就在/lib下,如果是64位操作系统那么就在/lib64下,初次之外还有/usr/lib,/usr/lib64,/usr/local/lib,/usr/local/lib64。64位可以兼容32位但是32位不能兼容64位。注意:并非所有的命令都有一个在某目录与之对应的可执行程序文件。
d、命令必须遵循特定格式规范:exe,msi,ELF(Linux)
[root@localhost /]# file /bin/ls
/bin/ls: ELF -bit LSB executable, x86-, version (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6., BuildID[sha1]=c5ad78cfc1de12b9bb6829207cececb990b3e987, stripped
e、命令分为两类
由shell程序的自带的命令:内置命令(builtin)
独立的可执行程序文件:文件名既命令名:外部命令
二、shell概述
1、shell程序是独特的程序,负责解析用户提供的命令。
a、他在内部提供了环境变量PATH:从哪些路径查找用户键入的命令字符串所对应的命令文件,查找次序为自左而右
[root@localhost /]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
2、查看命令类型: type COMMAND
[root@localhost /]# type ls
ls is aliased to `ls --color=auto'
[root@localhost /]# type type
type is a shell builtin
3、COMMAND OPTIONS ARGUMENTS中的OPTIONS
a、指定命令的运行特性
b、选项有两种表现形式:
短选项: -C,例如 -l,-d。注意:有些命令的选项没有-,如果同一命令同时使用多个短选项,多数可合并。
长选项: --word,例如--help,--human-readable。长选项不能合并。
有些选项可以带参数,此称为选项参数;
4、COMMAND OPTIONS ARGUMENTS中的ARGUMENTS
a、命令的作用对象:即命令对什么生效
b、注意:不同的命令的参数,有些命令可同时带多个参数,多个之间以空白字符分隔。
三、获取命令的使用帮助
1、内部命令: help COMMAND
[root@localhost /]# help type
2、外部命令
a、命令自带简要格式的使用帮助:# COMMAND --help
[root@localhost /]# ls --help
b、使用手册:manual。默认使用手册都在/usr/share/man。
man 手册格式:
SECTION:
NAME:功能性说明
SYNOPSIS:语法格式
DESCRIPTION:描述
OPTIONS:选项
EXAMPLES:使用示例
AUTHOR:作者
BUGS:报告程序bug的方式
...
[root@localhost /]# ls /usr/share/man
ca da en fr id ja man0p man1p man2 man3 man3x man4x man5x man6x man7x man8x man9x overrides pt ru sv uk zh_TW
cs de es hu it ko man1 man1x man2x man3p man4 man5 man6 man7 man8 man9 mann pl pt_BR sk tr zh_CN
powernow-k8-decode poweroff
[root@localhost /]# man poweroff
man命令中SYNOPSIS描述:
[]:可选内容
<>:必须提供的内容
a|b|c:多选一
...:同类内容可出现多个
c、使用手册:压缩格式的文件,有章节之分
/usr/share/man
man1,man2,...
1:用户命令
2:系统调用
3:C库调用
4:设备文件及特殊文件:
5:文件格式:(配置文件格式)
6:游戏使用帮助:
7:杂项:
8:管理工具及守护进程
此时我们查看第8章节下的lvcreate这个命令的man
[root@localhost /]# man 8 lvcreate
但是并不是每一个章节下都有,我们可以通过whatis COMMAND来查看哪些章节有此命令,其执行过程是查询数据库得到的,所以在查询之前最好先更新数据库。因为有些命令有可能刚安装导致数据库中的内容不是最新的
[root@localhost /]# makewhatis
[root@localhost /]# whatis passwd
passwd () - update user's authentication tokens #第一章节有
sslpasswd (1ssl) - compute password hashes
passwd () - password file #第五章节有
man命令打开手册以后的操作方法:
翻屏:
空格键:向文件尾翻一屏
b:向文件首部翻一屏
Ctrl + d:向文件尾部翻半屏
Ctrl+u:向文件首部翻半屏
回车键:向文件尾部翻一行
k:向文件首部翻一行
G:跳转至最后一行
#G:跳转至指定行
1G:跳转至文件首部
文本搜索:
/keyword:从文件首部向文件尾部依次查找:不区分字符大小写
?keyword:从文件尾部向文件首部依次查找
n:与查找命令方向相同
N:与查找命令方向相反
退出:
q:quit
man命令选项
-M /PATH/TO/SOMDIR:到指定目录下查找命令手册并打开
c、info COMMAND :获取命令的在线文档
d、很多应用程序会自带帮助文档:/usr/share/doc/APP-VERSION
README:程序的相关的信息
INSTALL:安装帮助
CHANGES:版本迭代时的改动信息
e、主流发行版官方文档
http://www.redhat.com/doc
f、程序官方的文档
官方站点上的"Document"
g、搜索引擎
keyword filetype:pdf :比如centos filetype:pdf
keyword site:domain.tld :比如centos site:magedu.com
...
3、基础命令
a、添加用户:useradd
[root@node3 ~]# useradd gentoo
b、查看对应用户的id
[root@node3 ~]# id gentoo
uid=(gentoo) gid=(gentoo) groups=(gentoo)
c、添加用户slackware,要求指定其所用的shell为/bin/tcsh
[root@node3 ~]# useradd -s /bin/tcsh slackware
[root@node3 ~]# id slackware
uid=(slackware) gid=(slackware) groups=(slackware)
[root@node3 ~]# tail - /etc/passwd
slackware:x::::/home/slackware:/bin/tcsh
4、书籍的出版社:
O'Reiley
Wrox
机械工业,电子工业,人邮,清华大学,水利水电
linux学习8 运维基本功-Linux获取命令使用帮助详解的更多相关文章
- linux学习9 运维基本功-Linux常用基础命令实战应用
一.文件系统知识回顾 1.Linux文件系统: a.文件名称严格区分字符大小写 b.文件可以使用除/以外任意字符 c.文件名长度不能超过255个字符 d.以.开头的文件为隐藏文件: . :当前目录 . ...
- linux学习17 运维核心技能-Linux系统下用户权限管理
一.权限管理 1.ls -l rwxrwxrwx 左三位:定义user(owner)的权限 中三位:定义group的权限 右三位:定义other的权限 1.进程安全上下文 a.进程对文件的访问权限应用 ...
- Linux学习之让进程在后台可靠运行的方法详解
我们经常会碰到这样的问题,用 telnet/ ssh 登录了远程的 Linux 服务器http://www.maiziedu.com/course/592/,运行了一些耗时较长的任务, 结果却由于网络 ...
- linux学习之路第九天(磁盘分区,挂载详解)
磁盘分区,挂载 -----分区基础知识 分区的方式 1)mbr分区: 1.最多支持四个主分区 2.系统只能安装在主分区 3.扩展分区要占一个主分区 4.mbr最大只支持2TB,但拥有最好的兼容性 -- ...
- linux命令学习笔记(22):find 命令的参数详解
find一些常用参数的一些常用实例和一些具体用法和注意事项. .使用name选项: 文件名选项是find命令最常用的选项,要么单独使用该选项,要么和其他选项一起使用. 可以使用某种文件名 模式来匹配文 ...
- Linux运维常用150个命令
Linux运维常用150个命令 转载自:www.cnblogs.com/bananaaa/p/7774467.html 命令 功能说明 线上查询及帮助命令(2个) man 查看命令帮助,命令的词典,更 ...
- 老男孩Linux.shell.RHCE运维初中高级50G附解压密码
学习Linux,好的教程.使学习事半功倍! 老男孩Linux.shell.RHCE运维初中高级 下载地址: http://pan.baidu.com/s/1hsQOb2W 密码: h4hs 解压密码: ...
- Linux轻量级自动运维工具-Ansible浅析【转】
转自 Linux轻量级自动运维工具-Ansible浅析 - ~微风~ - 51CTO技术博客http://weiweidefeng.blog.51cto.com/1957995/1895261 Ans ...
- Linux轻量级自动运维工具-Ansible浅析 转
转自 Linux轻量级自动运维工具-Ansible浅析 - ~微风~ - 51CTO技术博客http://weiweidefeng.blog.51cto.com/1957995/1895261 Ans ...
随机推荐
- Stack实现
栈的三种操作算法很简单 STACK-EMPTY(S) 1 if S.top == 0 2 return TRUE 3 else return FALSE PUSH(S, x) 1 S.top = ...
- Python-记事本
1.文本颜色 格式:\[显示方式;前景色;背景色m要打印的字符串\[0m 2.format 格式 print('{}的三次方为{:*^20}'.format(a,pow(a, 3))) print(& ...
- js拼接url以及为html某标签属性赋值
记录 js拼接url 比如有些时候我们需要为某按钮实现跳转,可以利用下面的方式做到: function ReturnIndex() { var rex = RegExp("tools&quo ...
- 安装macOS时遇到Unable to unmount volume for repair异常导致无法完成安装的解决办法
方法一: 使用终端命令行制作完macos安装U盘后,务必将.IAProductInfo文件放到U盘的根目录(非EFI分区的) sudo /Applications/Install\ macOS\ Si ...
- Spring Boot整合Mybatis完成级联一对多CRUD操作
在关系型数据库中,随处可见表之间的连接,对级联的表进行增删改查也是程序员必备的基础技能.关于Spring Boot整合Mybatis在之前已经详细写过,不熟悉的可以回顾Spring Boot整合Myb ...
- Spring-Cloud之Sleuth链路追踪-8
一.Spring Cloud Sleuth 是Spring Cloud 的一个组件,它的主要功能是在分布式系统中提供服务链路追踪的解决方案. 二.为什么需要Spring Cloud Sleuth? 微 ...
- selenium中的元素操作之下拉列表操作(四)
下拉列表操作中分为两种:select.非select 1.非select的下拉框操作 非select下拉列表操作与网页元素操作一致,找到元素,定位元素,设置等待,点击元素等等 接下来操作百度的设置按钮 ...
- Docker 四种网络模式
原文 https://www.cnblogs.com/gispathfinder/p/5871043.html 我们在使用docker run创建Docker容器时,可以用--net选项指定容器的网络 ...
- dump net core windbg 安装
安装 1.下载工具windbg 地址:https://www.microsoft.com/zh-cn/p/windbg-preview/9pgjgd53tn86?SilentAuth=1&rt ...
- 2019-07-24 PHP中mysql_fetch_assoc 和 mysql_fetch_array 有什么区别?
mysql_fetch_assoc() 函数从结果集中取得一行作为关联数组 来看下面的例子: 数据库中有上述几条数据,一般我们想取用就要按照如下代码: $con = mysql_connect('12 ...