Linux基础入门和帮助-第二篇

马哥教育 Linux SRE 学习笔记

用户登录信息查看命令

  • whoami: 显示当前登录有效用户
[root@rocky8 ~]$whoami
root
  • who: 系统当前所有的登录会话
[root@rocky8 ~]$who
root     pts/0        2024-05-24 12:55 (10.0.0.1)
  • w: 系统当前所有的登录会话及所做的操作
[root@rocky8 ~]$w13:06:47 up 11 min,  1 user,  load average: 0.00, 0.02, 0.02
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    10.0.0.1         12:55    1.00s  0.02s  0.00s w

文本编辑

  • nano 工具可以实现文本的编辑,上手容易,适合初学者

  • gedit 工具是图形工具

    范例: 创建登录提示文件 /etc/motd

    参考网站: https://www.bootschool.net/ascii-art

#如果没有安装nano,就按照nano:
[root@rocky8 ~]$yum install nano -y[root@rocky8 ~]$nano /etc/motd.     .  .      +     .      .          .             .      .     #       .           .                 .       .         ###            .      .      .         .      .   "#:. .:##"##:. .:#"  .      .                  .      . "####"###"####"  .                           .     "#:.    .:#"###"#:.    .:#"  .        .       .    .             "#########"#########"        .        .         .    "#:.  "####"###"####"  .:#"   .       .        .     .  "#######""##"##""#######"                  .      ."##"#####"#####"##"           .      .         .   "#:. ...  .:##"###"###"##:.  ... .:#"     .             .     "#######"##"#####"##"#######"      .     .          .    .     "#####""#######""#####"    .      .              .     "      000      "    .     .                  .         .   .   000     .        .       .             .. .. ......................O000O........................ ...... ...#按大写的X选择y保存

在这里插入图片描述

[root@rocky8 ~]$exit
#重新连接

在这里插入图片描述

输出信息 echo

echo 基本用法

echo 命令可以将后面跟的字符进行输出

功能:显示字符,echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开, 并在最后加 上换行号

语法:

echo [-neE][字符串]

选项:

  • -E (默认)不支持 \ 解释功能
  • -n 不自动换行
  • -e 启用 \ 字符的解释功能

显示变量

echo "$VAR_NAME#用变量值替换,弱引用
echo '$VAR_NAME#变量不会替换,强引用

启用命令选项-e,若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出

  • \a 发出警告声
  • \b 退格键
  • \c 最后不加上换行符号
  • \e escape,相当于\033
  • \n 换行且光标移至行首
  • \r 回车,即光标移至行首,但不换行
  • \t 插入tab
  • \ 插入\字符
  • \0nnn 插入nnn(八进制)所代表的ASCII字符
  • \xHH插入HH(十六进制)所代表的ASCII数字(man 7 ascii)

范例:

[root@rocky8 ~]$echo -e 'a\x0Ac'
a
c[root@rocky8 ~]$echo -e '\x57\x41\x4E\x47'
WANG[root@rocky8 ~]$echo \$PATH
$PATH[root@rocky8 ~]$echo \\
\
[root@rocky8 ~]$echo \\\
>
\
[root@rocky8 ~]$echo \\\\
\\[root@rocky8 ~]$echo "$PATH"
/apps/nginx/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin[root@rocky8 ~]$echo '$PATH'
$PATH
echo 高级用法

在终端中,ANSI定义了用于屏幕显示的Escape屏幕控制码

可以显示具有颜色的字符,其格式如下:

“\033[字符背景颜色;字体颜色m字符串\033[0m”

#字符背景颜色范围: 40--47                   
40:黑                       
41:红                        
42:绿
43:黄
44:蓝
45:紫
46:深绿                      
47:白色
#字体颜色: 30--37
30: 黑
31: 红
32: 绿
33: 黄
34: 蓝
35: 紫
36: 深绿
37: 白色

加颜色只是以下控制码中的一种,下面是常见的一些ANSI控制码:

\033[0m   关闭所有属性  
\033[1m   设置高亮度  
\033[4m   下划线  
\033[5m   闪烁  
\033[7m   反显  
\033[8m   消隐  
\033[nA   光标上移n行  
\033[nB   光标下移n行  
\033[nC   光标右移n列  
\033[nD   光标左移n列  
\033[x;yH 设置光标位置x行y列  
\033[2J   清屏  
\033[K   清除从光标到行尾的内容  
\033[s   保存光标位置  
\033[u   恢复光标位置  
\033[?25l   隐藏光标  
\033[?25h   显示光标
\033[2J\033[0;0H 清屏且将光标置顶

范例:

[root@rocky8 ~]$echo -e '\033[43;32;5;5mcxz\e[0m'
cxz

在这里插入图片描述

语言环境


默认系统为英文环境,可以修改为中文环境,从而查看帮助或提示可以变为中文

范例:临时修改LANG变量实现中文语言提示

#centos
[root@rocky8 ~]$echo $LANG
en_US.UTF-8[root@rocky8 ~]$LANG=zh_CN.UTF-8
[root@rocky8 ~]$echo $LANG
zh_CN.UTF-8

范例: Rocky 8 修改语言环境为中文

#rocky
[root@rocky8 ~]$localectl statusSystem Locale: LANG=en_US.UTF-8VC Keymap: usX11 Layout: us
[root@rocky8 ~]#echo $LANG
en_US.UTF-8[root@rocky8 ~]#yum list lang*
[root@rocky8 ~]#yum -y install langpacks-zh_CN.noarch#通用方法
[root@rocky8 ~]#localectl set-locale LANG=zh_CN.utf8#或者下面方式,CentOS8支持,但ubuntu和Centos7不支持,不建议使用
[root@rocky8 ~]#localectl set-locale zh_CN.utf8[root@rocky8 ~]#localectl statusSystem Locale: LANG=zh_CN.utf8VC Keymap: usX11 Layout: us
[root@rocky8 ~]#echo $LANG
zh_CN.utf8
#重新登录后可以看到中文环境
[root@rocky8 ~]#exit[root@rocky8 ~]$cxz
-bash: cxz: 未找到命令

范例: Ubuntu18,04 修改语言环境为中文

[root@ubuntu23 ~]$localectl status
System Locale: LANG=en_US.UTF-8VC Keymap: (unset)X11 Layout: usX11 Model: pc105[root@ubuntu23 ~]$apt install language-pack-zh-hans -y
[root@ubuntu23 ~]$localectl set-locale LANG=zh_CN.utf8
[root@ubuntu23 ~]$exit
[root@ubuntu23 ~]$echo $LANG
zh_CN.utf8[root@ubuntu23 ~]$cxz
找不到命令 “cxz”,您的意思是:“xz” 命令来自 Debian 软件包 xz-utils (5.4.1-0.2)“coz” 命令来自 Debian 软件包 coz-profiler (0.2.2-2)“cxl” 命令来自 Debian 软件包 ndctl (76-1ubuntu1)
尝试 apt install <deb name>

命令行扩展和被括起来的集合


命令行扩展:`` 和 $()

把一个命令的输出打印给另一个命令的参数,放在``中的一定是有输出信息的命令

$(COMMAND)
`COMMAND`

范例:比较 “ ” ,‘ ’, ``三者区别

[root@rocky8 ~]$echo "echo $HOSTNAME"
echo rocky8.cxz.cn[root@rocky8 ~]$echo 'echo $HOSTNAME'
echo $HOSTNAME[root@rocky8 ~]$echo `echo $HOSTNAME`
rocky8.cxz.cn#结论:
单引号:强引用,六亲不认,变量和命令都不识别,都当成了普通的字符串,"最傻"
双引号:弱引用,不能识别命令,可以识别变量,"半傻不精"
反向单引号:里面的内容必须是能执行的命令并且有输出信息,变量和命令都识别,并且会将反向单引号的内容
当成命令进行执行后,再交给调用反向单引号的命令继续,"最聪明"

范例:

[root@rocky8 ~]$echo "This system's name is $(hostname)"
This system's name is rocky8.cxz.cn[root@rocky8 ~]$echo "I am `whoami`"
I am root[root@rocky8 opt]$touch $(date +%F).log
[root@rocky8 opt]$ls
2024-05-24.log[root@rocky8 opt]$touch `date +%F`.txt
[root@rocky8 opt]$ll
总用量 0
-rw-r--r-- 1 root root 0 5月  24 14:07 2024-05-24.log
-rw-r--r-- 1 root root 0 5月  24 14:07 2024-05-24.txt[root@rocky8 opt]$touch `hostname`-`date +%F`.log
[root@rocky8 opt]$ll
总用量 0
-rw-r--r-- 1 root root 0 5月  24 14:07 2024-05-24.log
-rw-r--r-- 1 root root 0 5月  24 14:07 2024-05-24.txt
-rw-r--r-- 1 root root 0 5月  24 14:08 rocky8.cxz.cn-2024-05-24.log[root@rocky8 opt]$touch `date +%F_%H-%M-%S`.log
[root@rocky8 opt]$ll
总用量 0
-rw-r--r-- 1 root root 0 5月  24 14:09 2024-05-24_14-09-02.log
-rw-r--r-- 1 root root 0 5月  24 14:07 2024-05-24.log
-rw-r--r-- 1 root root 0 5月  24 14:07 2024-05-24.txt
-rw-r--r-- 1 root root 0 5月  24 14:08 rocky8.cxz.cn-2024-05-24.log[root@rocky8 opt]$touch `date -d '-1 day' +%F`.log
[root@rocky8 opt]$ll
总用量 0
-rw-r--r-- 1 root root 0 524 14:09 2024-05-23.log
-rw-r--r-- 1 root root 0 524 14:09 2024-05-24_14-09-02.log
-rw-r--r-- 1 root root 0 524 14:07 2024-05-24.log
-rw-r--r-- 1 root root 0 524 14:07 2024-05-24.txt
-rw-r--r-- 1 root root 0 524 14:08 rocky8.cxz.cn-2024-05-24.log

范例:$( ) 和 ``

[root@rocky8 opt]$ll `echo `date +%F`.txt`
-bash: .txt: 未找到命令
ls: 无法访问'date': 没有那个文件或目录
ls: 无法访问'+%F': 没有那个文件或目录[root@rocky8 opt]$ll $(echo $(date +%F).txt)
-rw-r--r-- 1 root root 0 524 14:07 2024-05-24.txt[root@rocky8 opt]$ll `echo $(date +%F).txt`
-rw-r--r-- 1 root root 0 524 14:07 2024-05-24.txt[root@rocky8 opt]$ll $(echo `date +%F`.txt)
-rw-r--r-- 1 root root 0 524 14:07 2024-05-24.txt

括号扩展:{ }

{} 可以实现打印重复字符串的简化形式

{元素1,元素2,元素3}
{元素1..元素2}

范例:

[root@rocky8 opt]$echo file{1,3,6}
file1 file3 file6
[root@rocky8 opt]$rm -f file{1,3,5}
[root@rocky8 opt]$echo {1..10}
1 2 3 4 5 6 7 8 9 10
[root@rocky8 opt]$echo {a..z}
a b c d e f g h i j k l m n o p q r s t u v w x y z
[root@rocky8 opt]$echo {1..10..2}
1 3 5 7 9
[root@rocky8 opt]$echo {000..20..2}
000 002 004 006 008 010 012 014 016 018 020
[root@rocky8 opt]$echo {a..z} {A..Z}
a b c d e f g h i j k l m n o p q r s t u v w x y z A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
[root@rocky8 opt]$echo {a..z}{1..3}
a1 a2 a3 b1 b2 b3 c1 c2 c3 d1 d2 d3 e1 e2 e3 f1 f2 f3 g1 g2 g3 h1 h2 h3 i1 i2 i3 j1 j2 j3 k1 k2 k3 l1 l2 l3 m1 m2 m3 n1 n2 n3 o1 o2 o3 p1 p2 p3 q1 q2 q3 r1 r2 r3 s1 s2 s3 t1 t2 t3 u1 u2 u3 v1 v2 v3 w1 w2 w3 x1 x2 x3 y1 y2 y3 z1 z2 z3

范例: 关闭和启用{}的扩展功能

[root@rocky8 opt]$echo $-
himBHs
[root@rocky8 opt]$echo {1..10}
1 2 3 4 5 6 7 8 9 10[root@rocky8 opt]$set +B
[root@rocky8 opt]$echo $-
himHs
[root@rocky8 opt]$echo {1..10}
{1..10}[root@rocky8 opt]$set -B
[root@rocky8 opt]$echo $-
himBHs
[root@rocky8 opt]$echo {1..10}
1 2 3 4 5 6 7 8 9 10

tab 键补全


tab 键可以实现命令及路径等补全,提高输入效率,避免出错

命令补全

  • 内部命令:
  • 外部命令:bash根据PATH环境变量定义的路径,自左而右在每个路径搜寻以给定命令名命名的文 件,第一次找到的命令即为要执行的命令
  • 命令的子命令补全,需要安装 bash-completion

注意:用户给定的字符串只有一条惟一对应的命令,直接补全,否则,再次Tab会给出列表

范例:

[root@rocky8 ~]$nmcli connection #按两下TAB
add      delete   edit     help     load     monitor  show
clone    down     export   import   modify   reload   up

路径补全

把用户给出的字符串当做路径开头,并在其指定上级目录下搜索以指定的字符串开头的文件名

如果惟一:则直接补全

否则:再次Tab给出列表

双击Tab键

  • command 2Tab 所有子命令或文件补全
  • string2Tab 以string开头命令
  • /2Tab 显示所有根目录下一级目录,包括隐藏目录
  • ./2Tab 当前目录下子目录,包括隐藏目录
  • *2Tab 当前目录下子目录,不包括隐藏目录
  • ~2Tab 所有用户列表
  • $2Tab 所有变量
  • @2Tab /etc/hosts记录 (centos7 不支持)
  • =2Tab 相当于ls –A (centos7不支持)

命令行历史

当执行命令后,系统默认会在内存记录执行过的命令

当用户正常退出时,会将内存的命令历史存放对应历史文件中,默认是 ~/.bash_history

登录shell时,会读取命令历史文件中记录下的命令加载到内存中

登录进shell后新执行的命令只会记录在内存的缓存区中;这些命令会用户正常退出时“追加”至命令历史 文件中

利用命令历史。可以用它来重复执行命令,提高输入效率

命令:history

history [-c] [-d offset] [n] 
history -anrw [filename] 
history -ps arg [arg...]

常用选项:

-c: 清空命令历史
-d offset: 删除历史中指定的第offset个命令
n: 显示最近的n条历史
-a: 追加本次会话新执行的命令历史列表至历史文件
-r: 读历史文件附加到历史列表
-w: 保存历史列表到指定的历史文件
-n: 读历史文件中未读过的行到历史列表
-p: 展开历史参数成多行,但不存在历史列表中
-s: 展开历史参数成一行,附加在历史列表后

命令历史相关环境变量

HISTSIZE:命令历史记录的条数
HISTFILE:指定历史文件,默认为~/.bash_history
HISTFILESIZE:命令历史文件记录历史的条数
HISTTIMEFORMAT="%F %T `whoami` "   显示时间和用户
HISTIGNORE="str1:str2*:…" 忽略str1命令,str2开头的历史
HISTCONTROL:控制命令历史的记录方式ignoredups 是默认值,可忽略重复的命令,连续且相同为“重复”ignorespace 忽略所有以空白开头的命令ignoreboth   相当于ignoredups, ignorespace的组合erasedups   删除重复命令

持久保存变量

以上变量可以 export 变量名=“值” 形式存放在 /etc/profile 或 ~/.bash_profile

范例:

[root@rocky8 ~]$cat .bash_profile
# .bash_profile# Get the aliases and functions
if [ -f ~/.bashrc ]; then. ~/.bashrc
fi# User specific environment and startup programsPATH=$PATH:$HOME/binexport PATH
export HISTCONTROL=ignoreboth
export HISTTIMEFORMAT="%F %T "[root@rocky8 ~]$history1  ip a2  vim $PS13  echo $PS14  $PS1=\[\e[1;36m\]\u\[\e[31m\]@\h\[\e[1;35m\]5  $PS1='\[\e[1;36m\]\u\[\e[31m\]@\h\[\e[1;35m\]'6  PS1='\[\e[1;36m\]\u\[\e[31m\]@\h\[\e[1;35m\]'7  PS1=\[\e[1;32m\][\t \[\e[1;36m\]\u\[\e[31m\]@\h\[\e[1;35m\] \W\[\e[1;32m\]]\[\e[0m\]\$8  exit

调用命令行历史


#重复前一个命令方法
重复前一个命令使用上方向键,并回车执行
按 !! 并回车执行
输入!-1 并回车执行
按 Ctrl+p 并回车执行
!:0 执行前一条命令(去除参数)
!n 执行history命令输出对应序号n的命令
!-n 执行history历史中倒数第n个命令
!string 重复前一个以“string”开头的命令
!?string 重复前一个包含string的命令
!string:p 仅打印命令历史,而不执行
!$:p 打印输出 !$ (上一条命令的最后一个参数)的内容
!*:p 打印输出 !*(上一条命令的所有参数)的内容
^string 删除上一条命令中的第一个string
^string1^string2 将上一条命令中的第一个string1替换为string2
!:gs/string1/string2 将上一条命令中所有的string1都替换为 string2
使用up(向上)和down(向下)键来上下浏览从前输入的命令
ctrl-r来在命令历史中搜索命令
(reverse-i-search)`’:
Ctrl+g:从历史搜索模式退出
#要重新调用前一个命令中最后一个参数
!$ 表示前一个命令中最后一个参数
Esc, .   点击Esc键后松开,然后点击 . 键
Alt+ .   按住Alt键的同时点击 .command !^   利用上一个命令的第一个参数做command的参数
command !$   利用上一个命令的最后一个参数做command的参数
command !*   利用上一个命令的全部参数做command的参数
command !:n 利用上一个命令的第n个参数做command的参数
command !n:^ 调用第n条命令的第一个参数
command !n:$ 调用第n条命令的最后一个参数
command !n:m 调用第n条命令的第m个参数
command !n:* 调用第n条命令的所有参数
command !string:^ 从命令历史中搜索以 string 开头的命令,并获取它的第一个参数
command !string:$ 从命令历史中搜索以 string 开头的命令,并获取它的最后一个参数
command !string:n 从命令历史中搜索以 string 开头的命令,并获取它的第n个参数
command !string:* 从命令历史中搜索以 string 开头的命令,并获取它的所有参数

bash的快捷键


Ctrl + l 清屏,相当于clear命令
Ctrl + o 执行当前命令,并重新显示本命令
Ctrl + s 阻止屏幕输出,锁定
Ctrl + q 允许屏幕输出,解锁
Ctrl + c 终止命令
Ctrl + z 挂起命令
Ctrl + a 光标移到命令行首,相当于Home
Ctrl + e 光标移到命令行尾,相当于End
Ctrl + f 光标向右移动一个字符
Ctrl + b 光标向左移动一个字符
Ctrl + xx 光标在命令行首和光标之间移动
ctrl+ > 光标向右移动一个单词尾,相当于 Alt + f
ctrl+ <     光标向左移动一个单词首,相当于 Alt + b
Ctrl + u 从光标处删除至命令行首
Ctrl + k 从光标处删除至命令行尾
Alt + r     删除当前整行
Ctrl + w 从光标处向左删除至单词首
Alt + d 从光标处向右删除至单词尾
Alt + Backspace 删除左边单词
Ctrl + d 删除光标处的一个字符
Ctrl + h 删除光标前的一个字符
Ctrl + y 将删除的字符粘贴至光标后
Alt + c 从光标处开始向右更改为首字母大写的单词
Alt + u 从光标处开始,将右边一个单词更改为大写
Alt + l 从光标处开始,将右边一个单词更改为小写
Ctrl + t 交换光标处和之前的字符位置
Alt + t 交换光标处和之前的单词位置
Alt + # 提示输入指定字符后,重复显示该字符#次

注意:Alt 组合快捷键经常和其它软件冲突

获得帮助


  • whatis
  • command --help
  • man
  • /usr/share/doc/
  • Red Hat documentation 、Ubuntu documentation
  • 软件项目网站
  • 其它网站
  • 搜索

whatis


whatis 使用数据库来显示命令的简短描述

此工具在系统刚安装后,不可立即使用,需要制作数据库后才可使用

执行下面命令生成数据库

#CentOS 7 版本以后
mandb

范例:

[root@rocky8 ~]$whatis cal
cal (1)              - display a calendar
cal (1p)             - print a calendar
[root@rocky8 ~]$man -f cal
cal (1)              - display a calendar
cal (1p)             - print a calendar[root@rocky8 ~]$whatis ls
ls (1)               - list directory contents
ls (1p)              - list directory contents

查看命令的帮助


内部命令帮助

  • help COMMAND
  • man bash

范例:

[root@rocky8 ~]$type history
history is a shell builtin[root@rocky8 ~]$help history
history: history [-c] [-d offset] [n] or history -anrw [filename] or histo                   ry -ps arg [arg...]Display or manipulate the history list.Display the history list with line numbers, prefixing each modifiedentry with a `*'.  An argument of N lists only the last N entries.Options:-c        clear the history list by deleting all of the entries-d offset delete the history entry at position OFFSET.-a        append history lines from this session to the history file-n        read all history lines not already read from the history f                   ileand append them to the history list-r        read the history file and append the contents to the histo                   rylist-w        write the current history to the history file-p        perform history expansion on each ARG and display the resu                   ltwithout storing it in the history list-s        append the ARGs to the history list as a single entryIf FILENAME is given, it is used as the history file.  Otherwise,if HISTFILE has a value, that is used, else ~/.bash_history.If the HISTTIMEFORMAT variable is set and not null, its value is usedas a format string for strftime(3) to print the time stamp associatedwith each displayed history entry.  No time stamps are printed otherwi                   se.Exit Status:Returns success unless an invalid option is given or an error occurs.

外部命令及软件帮助

  • COMMAND --help 或 COMMAND -h
  • 使用 man 手册(manual): man COMMAND
  • 信息页:info COMMAND
  • 程序自身的帮助文档:README、INSTALL、ChangeLog
  • 程序官方文档 相关网站,如:技术论坛
  • 搜索引擎

外部命令的–help 或 -h 选项


显示用法总结和参数列表,大多数命令使用,有的没有

范例:

[root@rocky8 ~]$date --help
Usage: date [OPTION]... [+FORMAT]or:  date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
Display the current time in the given FORMAT, or set the system date.
#后面还有,略[root@rocky8 ~]$date -h
date: invalid option -- 'h'
Try 'date --help' for more information.

格式说明:

  • [] 表示可选项
  • CAPS或 <> 表示变化的数据
  • … 表示一个列表 x |y| z
  • 的意思是“ x 或 y 或 z ”
  • -abc的 意思是 -a -b –c
  • { } 表示分组

man 命令


man 提供命令帮助的文件,手册页存放在/usr/share/man

几乎每个命令都有man的“页面”

man 帮助

https://man7.org/linux/man-pages/index.html
https://man7.org/linux/man-pages/dir_all_alphabetic.html

中文man需安装包

  • man-pages
  • man-pages-zh-CN

man 页面分组

不同类型的帮助称为不同的“章节”,统称为Linux手册,man 1 man

  • 1:用户命令
  • 2:系统调用
  • 3:C库调用
  • 4:设备文件及特殊文件
  • 5:配置文件格式
  • 6:游戏
  • 7:杂项
  • 8:管理类的命令
  • 9:Linux 内核API

man 命令的配置文件:

#CentOS 6 之前版 man 的配置文件
/etc/man.config 
#CentOS 7 之后版 man 的配置文件
/etc/man_db.conf
#ubuntu man 的配置文件
/etc/manpath.config

格式:

MANPATH /PATH/TO/SOMEWHERE   #指明man文件搜索位置

也可以指定位置下搜索COMMAND命令的手册页并显示

man -M /PATH/TO/SOMEWHERE COMMAND

查看man手册页

man [OPTION...] [SECTION] PAGE...
man [章节] keyword

man 帮助段落说明

  • NAME 名称及简要说明
  • SYNOPSIS 用法格式说明
  • [] 可选内容
  • <> 必选内容
  • a|b 二选一
  • { } 分组
  • … 同一内容可出现多次
  • DESCRIPTION 详细说明
  • OPTIONS 选项说明
  • EXAMPLES 示例
  • FILES 相关文件
  • AUTHOR 作者
  • COPYRIGHT 版本信息
  • REPORTING BUGS bug信息
  • SEE ALSO 其它帮助参考

常用选项

  • 列出所有帮助
man -a keyword 
  • 搜索man手册
#列出所有匹配的页面,使用 whatis 数据库
man -k keyword 
  • 相当于 whatis
man -f keyword 
  • 打印man帮助文件的路径
man -w [章节] keyword

范例: 查看passwd相关命令和文件,man帮助文件路径

[root@rocky8 ~]$whereis passwd
passwd: /usr/bin/passwd /etc/passwd /usr/share/man/man1/passwd.1.gz /usr/share/man/man5/passwd.5.gz

范例: 直接打开man的帮助文件

[root@rocky8 ~]$man -w ls
/usr/share/man/man1/ls.1.gz
[root@rocky8 ~]$file /usr/share/man/man1/ls.1.gz
/usr/share/man/man1/ls.1.gz: gzip compressed data, max compression, from Unix, original size 7921#直接打开man的gz压缩格式文档
[root@rocky8 ~]$man /usr/share/man/man1/ls.1.gz#直接打开man格式文档
[root@rocky8 ~]$file /usr/local/src/nginx-1.22.1/man/nginx.8
/usr/local/src/nginx-1.22.1/man/nginx.8: troff or preprocessor input, ASCII text
[root@rocky8 ~]$man -l /usr/local/src/nginx-1.22.1/man/nginx.8

命令自身提供的官方使用指南


/usr/share/doc

多数安装了的软件包的子目录,包括了这些软件的相关原理说明

常见文档:README INSTALL CHANGES

不适合其它地方的文档的位置

配置文件范例 HTML/PDF/PS 格式的文档

授权书详情

范例:

[root@rocky8 ~]$ls /usr/share/doc/nano/
AUTHORS    COPYING   INSTALL    NEWS    sample.nanorc  TODO
ChangeLog  faq.html  nano.html  README  THANKS
[root@rocky8 ~]$ls /usr/share/doc/nano/nano.html

系统及第三方应用官方文档


Linux官方在线文档和知识库

通过发行版官方的文档光盘或网站可以获得安装指南、部署指南、虚拟化指南等

http://www.redhat.com/docs
http://kbase.redhat.com
http://access.redhat.com
https://help.ubuntu.com/lts/serverguide/index.html
http://tldp.org

通过在线文档获取帮助


http://www.github.com
https://www.kernel.org/doc/html/latest/
http://httpd.apache.org
http://www.nginx.org
https://mariadb.com/kb/en
https://dev.mysql.com/doc/
http://tomcat.apache.org
https://jenkins.io/zh/doc/
https://kubernetes.io/docs/home/
https://docs.openstack.org/train/
http://www.python.org
http://php.net

相关网站和搜索


#各种搜索网站
谷歌
必应
百度
等等

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/330760.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

盲盒小程序开发,数字化发展下的优势

近年来&#xff0c;盲盒经济得到了快速发展&#xff0c;不少人开始加入到盲盒大军中&#xff0c;盲盒市场规模不断扩大。 盲盒最大的特点就是能够给消费者带来拆盒的刺激性和惊喜感。盲盒商品大多是动漫手办、周边等&#xff0c;具有较大的收藏价值&#xff0c;因此深深吸引着…

VMware虚拟机桥接无线网卡上网(WIFI)

一、打开VM点击【编辑】-【虚拟网络编辑器】 二、点击【桥接模式】- 点击【自动设置】- 选择自己的无线网适配器 - 【确定】 三、开机之后会弹出提示连接网络&#xff0c;就能看见网络已经连上了

vue 表格表头展示不下,显示。。。;鼠标悬浮展示全部

vue 表格表头展示不下&#xff0c;显示。。。&#xff1b;鼠标悬浮展示全部 <templateslot-scope"scope"slot"header"><span:title"临时证券类型"style"white-space:nowrap">{{ 临时证券类型 }}</span></templa…

electron调试自动更新,不触发下载进度解决方案

调试时候删除掉后缀是.blockmap的文件。如果你的代码在改动不大的情况下发布一个新版本。那个安装器可能会根据这个数据自动合成一个包&#xff0c;而不走网络路径。从而不触发下载进度。

k8s 声明式资源管理

一、资源配置清单的管理 1.1 查看资源配置清单 声明式管理方法&#xff1a; 1.适合于对资源的修改操作 2.声明式资源管理方法依赖于资源配置清单文件对资源进行管理 资源配置清单文件有两种格式&#xff1a;yaml&#xff08;人性化&#xff0c;易读&#xff09;&#xff0c;j…

对AI 感兴趣的小伙伴

如图&#xff0c;欢迎来玩儿&#xff01; 欢迎来玩儿

centos下yum -y install npm报没有可用软件包 npm

yum -y install npm安装报错 失败原因是因为缺少epel&#xff08;epel是社区打造的免费开源发行软件包版本库&#xff0c;系统包含大概1万多个软件包&#xff09;&#xff0c;需要先安装epel-release 解决方法&#xff1a; 1、先安装epel-release yum -y install epel-releas…

Java数组的使用

Java数组的使用 前言一、数组基本用法什么是数组注意事项创建数组基本语法代码示例注意事项 数组的使用代码示例获取长度 & 访问元素注意事项 下标越界遍历数组使用 for-each 遍历数组 二、数组作为方法的参数基本用法代码示例打印数组内容 理解引用类型代码示例参数传内置…

AI绘画ComfyUI 进阶教程 | 字节最强换脸插件PuLID 详解,还请收藏!

大家好&#xff0c;我是小强 这应当算作是小编分享的换脸工具系列中的又一力作&#xff0c;从最初的roop&#xff0c;到之后的ReActor&#xff0c;再到备受欢迎的InstantID&#xff0c;以及今日重点介绍的字节开源产品——PuLID。 提及PuLID&#xff0c;首要原因并非仅仅在于…

GpuMall智算云:Ubuntu 实例桌面版

基于 ubuntu18.04 安装的桌面版本&#xff0c;桌面使用 xfce4 &#xff0c;集成了 Pytorch2.3.0、cuda11.8、Python3.10、VNC、noVNC、VSCode-Server。 在 镜像市场 选择xfce4-desktop镜像&#xff0c;然后进行创建实例 GpuMall智算云 | 省钱、好用、弹性。租GPU就上GpuMall…

图片分类模型训练及Web端可视化预测(下)——Web端实现可视化预测

Web端实现可视化预测 基于Flask搭建Web框架&#xff0c;实现HTML登录页面&#xff0c;编写图片上传并预测展示页面。后端实现上一篇文章所训练好的模型&#xff0c;进行前后端交互&#xff0c;选择一张图片&#xff0c;并将预测结果展示到页面上。 文章目录 Web端实现可视化预测…

【Spring Security系列】权限之旅:SpringSecurity小程序登录深度探索

作者&#xff1a;后端小肥肠 创作不易&#xff0c;未经允许严禁转载。 姊妹篇&#xff1a; 【Spring Security系列】Spring SecurityJWTRedis实现用户认证登录及登出_spring security jwt 退出登录-CSDN博客 1. 前言 欢迎来到【Spring Security系列】&#xff01;在当今数字化…

海外媒体发稿的关键步骤和投稿策略:如何撰写高质量的新闻稿?国外软文发布平台有哪些?

发布国外新闻稿件是一个涉及多步骤的过程&#xff0c;旨在确保您的新闻稿能够有效覆盖目标受众。以下是一些关键步骤和实用的技巧&#xff0c;帮助你实现海外媒体发稿。 1. 明确目标和受众 首先&#xff0c;明确您发布新闻稿的目标&#xff0c;是为了增加品牌曝光、推出新产品…

【NVM】持久内存的架构

1 内存数据持久化 1.1 数据持久化 持久内存系统包含如下关键组件&#xff1a;微处理器、连接微处理器内存总线上的持久内存模组&#xff08;Persistent MemoryModule&#xff0c;PMM&#xff09;及持久内存上的非易失性存储介质。 使用持久内存来实现数据的持久化&#xff0c…

蓝牙(2):BR/EDR的连接过程;查询(发现)=》寻呼(连接)=》安全建立=》认证=》pair成功;类比WiFi连接过程。

4.2.1 BR/EDR 流程&#xff1a; 查询&#xff08;发现&#xff09;》寻呼&#xff08;连接&#xff09;》安全建立》认证》pair成功 4.2.1.1 查询&#xff08;发现&#xff09;流程Inquiry (discovering) 类比WiFi的probe request/response 蓝牙设备使用查询流程来发现附近的…

【Docker实操】启动redis服务

一、步骤 1、获取redis镜像 执行获取redis镜像命令&#xff1a;docker pull redis。打印镜像清单&#xff0c;可以看到新拉到的redis镜像。 2、创建redis.conf配置文件 linux主机 mkdir -p /root/www/redis/conf touch /root/www/redis/conf/redis.conf cat << EOF &…

vue contextPath的思考

先说我这边的情况&#xff0c;目前项目都是前后端分离开发的&#xff0c;上线有种部署方式&#xff0c;常见的就是前后端分开部署&#xff0c;这是比较常见的&#xff0c;我这边因客户原因&#xff0c;打包一起进行部署比较简单&#xff0c;交付技术运维部方便后期其他现场部署…

基于Matlab卷积神经网络人脸识别

欢迎大家点赞、收藏、关注、评论啦 &#xff0c;由于篇幅有限&#xff0c;只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景与意义 人脸识别作为计算机视觉领域的关键技术之一&#xff0c;具有广泛的应用前景&#xff0c;如安全…

“高考钉子户”唐尚珺决定再战2024年高考

“高考钉子户”唐尚珺决定在2024年再次参加高考&#xff0c;这个选择确实很特别也很有趣。十几年连续参加高考&#xff0c;他已经积累了大量的备考经验和应试技巧。这样的经验对于高考辅导机构来说无疑是非常宝贵的资源&#xff0c;他如果选择去辅导机构当老师&#xff0c;应该…

文章解读与仿真程序复现思路——电力系统保护与控制EI\CSCD\北大核心《基于改进粒子滤波的锂离子电池剩余寿命预测 》

本专栏栏目提供文章与程序复现思路&#xff0c;具体已有的论文与论文源程序可翻阅本博主免费的专栏栏目《论文与完整程序》 论文与完整源程序_电网论文源程序的博客-CSDN博客https://blog.csdn.net/liang674027206/category_12531414.html 电网论文源程序-CSDN博客电网论文源…