apachectl

apachectl

Apache服务器前端控制工具

补充说明

apachectl命令 是Apache的Web服务器前端控制工具,用以启动、关闭和重新启动Web服务器进程。

语法

apachectl(参数)

参数

  • configtest:检查设置文件中的语法是否正确;
  • fullstatus:显示服务器完整的状态信息;
  • graceful:重新启动Apache服务器,但不会中断原有的连接;
  • help:显示帮助信息;
  • restart:重新启动Apache服务器;
  • start:启动Apache服务器;
  • status:显示服务器摘要的状态信息;
  • stop:停止Apache服务器。
2024-08-08    
apk

apk

Alpine Linux 下的包管理工具

使用实例

apk install xxx
apk search xxx # 支持正则
apk info xxx # 查看包的详细信息
apk show # list local package
# 卸载并删除 包
apk del openssh openntp vim

升级

upgrade命令升级系统已安装的所以软件包(一般包括内核),当然也可指定仅升级部分软件包(通过-u或–upgrade选择指定)。

apk update # 更新最新本地镜像源
apk upgrade # 升级软件
apk add --upgrade busybox # 指定升级部分软件包

搜索

apk search # 查找所以可用软件包
apk search -v # 查找所以可用软件包及其描述内容
apk search -v 'acf*' # 通过软件包名称查找软件包
apk search -v -d 'docker' # 通过描述文件查找特定的软件包

查看包信息

info命令用于显示软件包的信息。

apk info # 列出所有已安装的软件包
apk info -a zlib # 显示完整的软件包信息
apk info --who-owns /sbin/lbu # 显示指定文件属于的包

笔记

还是蛮喜欢 alpine 的,简单纯粹

2024-08-08    
apropos

apropos

在 whatis 数据库中查找字符串

补充说明

apropos命令 在一些特定的包含系统命令的简短描述的数据库文件里查找关键字,然后把结果送到标准输出。 

如果你不知道完成某个特定任务所需要命令的名称,可以使用一个关键字通过Linux apropos实用程序来搜索它。该实用程序可以搜索关键字并且显示所有包含匹配项的man页面的简短描述。另外,使用man实用程序和-k(关键字)选项,可以得到和用Linux apropos实用程序相同的结果(实际上是相同的命令)。

语法

apropos [-dalhvV] -e|-[w|-r] [-s section] [-m system[,...]] [-M path] [-L locale] -C [file] keyword ...

选项

-d, --debug:输出调试信息。
-v, --verbose:输出详细的警告信息。
-r, -- regex:将每个keyword作为正则表达式解释。这是默认行为。每个keyword将匹配手册页和描述。
-w, --wildcard:将每个keyword作为shell样式的通配符解释。
-e, --exact:每个keyword将精确匹配手册页名字和描述。
-a, --and:只显示匹配所有keyword的手册页和描述。默认显示匹配任何keyword的项。
-l, --long:不根据终端宽度缩减输出。
-s section, --section section:只查找指定的手册section。
-m system[,...], --systems=system[,...]:用于查找其它操作系统的手册页。
-M path, --manpath=path:指定从其它以冒号分隔的手册页层次查找。默认使用$MANPATH环境变量。这个选项覆盖$MANPATH的内容-L locale, --locale=locale:apropos调用C函数setlocale来得到当前本地化信息,包括$LC_MESSAGE和$LANG。使用该选项提供一个locale字符串来临时更改本地化信息。
-C file, --config-file=file:使用这个用户配置文件而不是默认的~/.manpath。
-h, --help:打印帮助信息并退出。
-V, --version:打印版本信息并退出。

返回值

返回0表示成功,1表示用法、语法或配置文件错误,2表示操作错误,16表示没有找到匹配的内容。

实例

[root@localhost ~]# man -k who
at.allow [at]        (5)  - determine who can submit jobs via at or batch
at.deny [at]         (5)  - determine who can submit jobs via at or batch
jwhois               (1)  - client for the whois service
jwhois              (rpm) - Internet whois/nicname client.
Net::LDAP::Extension::whoami (3pm)  - LDAP Who am I? Operation
w                    (1)  - Show who is logged on and what they are doing
who                  (1p)  - display who is on the system
who                  (1)  - show who is logged on
whoami               (1)  - print effective userid

[root@localhost ~]# apropos who
at.allow [at]        (5)  - determine who can submit jobs via at or batch
at.deny [at]         (5)  - determine who can submit jobs via at or batch
jwhois               (1)  - client for the whois service
jwhois              (rpm) - Internet whois/nicname client.
Net::LDAP::Extension::WhoAmI (3pm)  - LDAP Who am I? Operation
w                    (1)  - Show who is logged on and what they are doing
who                  (1p)  - display who is on the system
who                  (1)  - show who is logged on
whoami               (1)  - print effective userid

查找手册页名字和描述中包含emacs和vi的手册页:

2024-08-08    
apt-get

apt-get

Debian Linux发行版中的APT软件包管理工具

补充说明

apt-get命令 是Debian Linux发行版中的APT软件包管理工具。所有基于Debian的发行都使用这个包管理系统。deb包可以把一个应用的文件包在一起,大体就如同Windows上的安装文件。

语法

apt-get [OPTION] PACKAGE

选项

apt-get install  # 安装新包
apt-get remove   # 卸载已安装的包(保留配置文件)
apt-get purge    # 卸载已安装的包(删除配置文件)
apt-get update   # 更新软件包列表
apt-get upgrade  # 更新所有已安装的包
apt-get autoremove   # 卸载已不需要的包依赖
apt-get dist-upgrade # 自动处理依赖包升级
apt-get autoclean    # 将已经删除了的软件包的.deb安装文件从硬盘中删除掉
apt-get clean        # 删除软件包的安装包

-c:指定配置文件。

参数

  • 管理指令:对APT软件包的管理操作;
  • 软件包:指定要操纵的软件包。

实例

使用apt-get命令的第一步就是引入必需的软件库,Debian的软件库也就是所有Debian软件包的集合,它们存在互联网上的一些公共站点上。把它们的地址加入,apt-get就能搜索到我们想要的软件。/etc/apt/sources.list是存放这些地址列表的配置文件,其格式如下:

deb web或[ftp地址] [发行版名字] main/contrib/non-[free]

我们常用的Ubuntu就是一个基于Debian的发行,我们使用apt-get命令获取这个列表,以下是我整理的常用命令:

在修改/etc/apt/sources.list或者/etc/apt/preferences之后运行该命令。此外您需要定期运行这一命令以确保您的软件包列表是最新的:

apt-get update

安装一个新软件包:

apt-get install packagename

卸载一个已安装的软件包(保留配置文件):

apt-get remove packagename

卸载一个已安装的软件包(删除配置文件):

apt-get –purge remove packagename

会把已装或已卸的软件都备份在硬盘上,所以如果需要空间的话,可以让这个命令来删除你已经删掉的软件:

apt-get autoclean apt

这个命令会把安装的软件的备份也删除,不过这样不会影响软件的使用的:

2024-08-08    
apt-key

apt-key

管理Debian Linux系统中的软件包密钥

补充说明

apt-key命令 用于管理Debian Linux系统中的软件包密钥。每个发布的deb包,都是通过密钥认证的,apt-key用来管理密钥。

语法

apt-key(参数)

参数

操作指令:APT密钥操作指令。

实例

apt-key list          # 列出已保存在系统中key。
apt-key add keyname   # 把下载的key添加到本地trusted数据库中。
apt-key del keyname   # 从本地trusted数据库删除key。
apt-key update        # 更新本地trusted数据库,删除过期没用的key。
2024-08-08    
apt-sortpkgs

apt-sortpkgs

Debian Linux下对软件包索引文件进行排序的工具

补充说明

apt-sortpkgs命令 是Debian Linux下对软件包索引文件进行排序的简单工具。

语法

apt-sortpkgs(选项)(参数)

选项

-s:使用源索引字段排序;
-h:显示帮助信息。

参数

文件:指定要排序的包含debian包信息的索引文件。

2024-08-08    
aptitude

aptitude

Debian Linux系统中软件包管理工具

补充说明

aptitude命令 与apt-get命令一样,都是Debian Linux及其衍生系统中功能极其强大的包管理工具。与apt-get不同的是,aptitude在处理依赖问题上更佳一些。举例来说,aptitude在删除一个包时,会同时删除本身所依赖的包。这样,系统中不会残留无用的包,整个系统更为干净。它通过文本操作菜单和命令两种方式管理软件包。

语法

aptitude(选项)(参数)

选项

-h:显示帮助信息;
-d:仅下载软件包,不执行安装操作;
-P:每一步操作都要求确认;
-y:所有问题都回答“yes”;
-v:显示附加信息;
-u:启动时下载新的软件包列表。

参数

操作命令:用户管理软件包的操作命令。

实例

以下是我总结的一些常用aptitude命令,仅供参考:

aptitude update            # 更新可用的包列表
aptitude upgrade           # 升级可用的包
aptitude dist-upgrade      # 将系统升级到新的发行版
aptitude install pkgname   # 安装包
aptitude remove pkgname    # 删除包
aptitude purge pkgname     # 删除包及其配置文件
aptitude search string     # 搜索包
aptitude show pkgname      # 显示包的详细信息
aptitude clean             # 删除下载的包文件
aptitude autoclean         # 仅删除过期的包文件

当然,你也可以在文本界面模式中使用 aptitude。

2024-08-08    
ar

ar

建立或修改备存文件,或是从备存文件中抽取文件

补充说明

ar命令 是一个建立或修改备存文件,或是从备存文件中抽取文件的工具,ar可让您集合许多文件,成为单一的备存文件。在备存文件中,所有成员文件皆保有原来的属性与权限

语法

ar [-]{dmpqrtx}[abcfilNoPsSuvV] [membername] [count] archive files...
Usage: ar [emulation options] [-]{dmpqrstx}[abcDfilMNoPsSTuvV] [--plugin <name>] [member-name] [count] archive-file file...
       ar -M [<mri-脚本]

选项

ar 允许你 在第一个 命令行 参数中 以任意 顺序 混合 指定 操作码p 和修饰符mod .

只要你 愿意, 也可以 用破折号 作为 命令行 第一个 参数的 开始.

p 关键字 指明 要执行的 操作, 只能 指明为 如下 之一:

d      从档案中删除 模块. 通过files 指明 要删除的 模块的 名称; 如果 没有 指出 要删除的  文件  名称,  档案不会  改变  任何
      内容.

      如果 给出了'v' 修饰符,ar 会例出 它删除的 每一个 模块.

m      用此 操作 在档案中移动 成员.
      如果 某个 符号名 在档案的 多个 成员中 有定义, 那么 程序 怎样 连接 档案 文件 得到的 结果 可能是 不同的.
      如果  没有为m 指定 修饰符, 由files 指出的 成员 将移动到 档案的末尾 ; 可以 通过 `a', `b'`i' 等修饰符, 指定 成员
      移动的 具体 位置.

p      在标准 输出上 打印 档案中 指定的 成员.  如果 给出了`v' 修饰符, 在 打印 成员 内容 之前, 先打印 成员的 名字.
      如果没有 指明files 参数, 档案中 所有的 成员 都会被 打印 出来.

q      快速 追加; 增加 files 到 archive 的末尾, 不进行 替换 检查.
      修饰符 `a' `b'`i'不 影响此 操作, 新成员 始终 追加到 档案的 末尾处.
      修饰符 `v' 可以使 ar 列出 它追加的 所有文件.
      由于 本功能 是用于 快速操作, 即使 档案中 有 符号表 索引 也不 进行 更新; 可以 使用 `ar s' 或 ranlib 明确 要求  更新
      这些索引.

      在为快速 追加 重建 索引时,由于 有 太多 不同的 系统, 所以 GNU ar 采用 `q' 作为 `r'的一个 同义字.

r      把文件  files  插入 archive ( 替换 ). 本操作与 `q' 是不同的, 如果 档案中 已有的 某个 成员与 插入 文件的 名称 相同,
      此成员 将被删除.
      如果 不存在 名称为 files 的文件, ar 显示 一个 错误 消息, 并且 保留 档案中 已有的 同名 成员.
      缺省情况下, 新成员 增加到 挡案的 末尾; 可以 通过 使用 `a' `b'`i' 等修饰符 指定 相对于 已有 成员的 位置.
      通过 使用 `v' 修饰符 会为每个 插入的 文件 产生 一行 输出, 根据 输出中的 字符 `a' 或 `r' 可以 表明 该文件  是追加的
      (没有 删除 以前的成员) 还是 替换的.

t      显示  一个 archive 档案 所包含 内容的 列表 , 或 档案中的 由 files 指出的 文件 列表.  通常 只显示 成员的 名称, 如果
      使用 `v' 修饰符, 可以 得到 成员的 权限, 时间属性, 属主, 组和 大小.

      如果 没有 指出 files, 档案中的 所有 文件 都会 列出.

      如果 档案中 (称为 `b.a') 有多个 同名 成员 (称为 `fie'), `ar t b.a fie' 仅仅 列出 第一个; 要看到 它们的 全部,  必须
      要求 完整的 列表 —在本例中是 `ar t b.a'.

x      从档案中 抽取  成员 (名称为 files) .  如果 使用 `v' 修饰符, ar 会列出 它抽取的 每一个 文件的 名字.
      如果没有给出 files, 抽取 档案中 所有的 文件.

可以在 操作符 p 后紧随 一定数量的 修饰符 mod 以指明 操作的 各种 行为.

a      增加 文件到 档案中 已有 成员 之后  , 如果 使用了 修饰符 a, 必须在 档案 名称 archive 之前 以 membername 参数的 形式
      给出 档案中 已有 成员的 名字.

b      增加 文件到 档案中 已有 成员 之前  , 如果 使用了 修饰符 b, 必须在 档案 名称 archive 之前 以 membername 参数的 形式
      给出 档案中 已有 成员的 名字.  (和修饰符 `i' 相同).

c      建立    档案.  指定的 档案 archive 始终 会被建立, 如果 你要求 执行的是 更新, 通过 此修饰符 建立 档案时 会给出 一个
      警告.
      
f      截短 档案成员的 名字.  ar 通常 允许 任意 长度的 文件名, 但这会 导致 与某些 系统上的 ar 出现 兼容性  问题,  使用  f
      修饰符 可以 在往档案中 追加 文件时 把名字 截短.

i      插入 文件到 档案中 已有 成员 之前  , 如果 使用了 修饰符 i, 必须在 档案 名称 archive 之前 以 membername 参数的 形式
      给出 档案中 已有 成员的 名字.  (与修饰符 `b' 相同).

l      接受此修饰符, 但不起作用.

N      使用 count 参数. 本修饰符 用于 在档案中 有多个 同名 成员的 情况.  删除 或抽取 档案中 给定 名字的第 count 个实例.

o      抽取 成员时 保留 他们 原始的  时间属性. 如果 没有 此修饰符, 文件以抽取 的时间 作为 它的时间 属性.

P      匹配 档案中的 名字时 使用 完整的 路径名.  ar 不能 建立 使用 完整 路径名的 档案  (这不符合  POSIX  标准),  但其它的
      档案  工具  能够建立, 本选项 会使 ar 在抽取 由其它 工具 建立的 档案 文件时, 使用完整的 路径名 去匹配 档案中 成员的
      名字.

s      即使 没有对 档案 进行 改变, 用本 修饰符 也可以 往档案中 写一个 目标 文件的 索引 或更新 已经 存在的  索引.   可以与
      其它 操作 一起 使用 本修饰符, 也可以 单独使用.  对一个 档案 执行 `ar s' 与执行 `ranlib' 等价.

S      不生成  档案的 符号表. 这可以 加速 建立 大的档案 文件的 过程,但这样 建立的 档案 不能被 连接器 使用, 为建立 符号表,
      在最后 执行 `ar' 时应该 不用 `S' 修饰符, 或者 对档案 执行 一次 `ranlib' .

u      通常ar r... 把所有 列出的 文件 插入到 档案中, 如果 希望 仅仅 插入比 档案中 已有 成员 更新的  文件时,  就应该  使用
      此修饰符.   `u'  修饰符  仅允许  与 `r' (替换) 操作 一起 使用.  某些 情况下, 由于 用 `q' 操作 比较 文件的 时间属性
      会失去 速度上的 优势, 所以 不允许 执行 `qu' 组合操作.

v      使用本修饰符可以进行 冗余的 操作。附加了此修饰符时,很多操作会显示 更多的消息,如处理的文件名等。
V      显示 ar 的版本号。

选项参数

2024-08-08    
arch

arch

显示当前主机的硬件架构类型

概要

arch [OPTION]...

主要用途

  • 打印机器架构信息;arch 命令输出结果有:i386、i486、i586、alpha、sparc、arm、m68k、mips、ppc、i686等。

选项

--help       显示帮助信息并退出。
--version    显示版本信息并退出。

例子

[root@localhost ~]# arch
x86_64

注意

  1. 该命令等价于 uname -m

  2. 该命令是GNU coreutils包中的命令,相关的帮助信息请查看man -s 1 archinfo coreutils 'arch invocation'

2024-08-08    
arj

arj

用于创建和管理.arj压缩包

补充说明

arj命令.arj 格式的压缩文件的管理器,用于创建和管理 .arj 压缩包。

语法

arj(参数)

参数

  • 操作指令:对 .arj 压缩包执行的操作指令;
  • 压缩包名称:指定要操作的arj压缩包名称。
2024-08-08