root 6 years ago
parent 6cbe184493
commit fdabc430c6

@ -0,0 +1,98 @@
# 此文件用来记录经典或有趣的数学问题
# It's really fun to swim in the ocean of mathematics
# 百钱白鸡问题1只公鸡5元1只母鸡3元3只小鸡1元100元买100只鸡公鸡母鸡小鸡各有多少
# 经典三元一次方程求解设各有xyz只
# 解法一推断每种鸡花费依次轮询运行时间最短2019-7-24最优方案
# import time
# start = time.perf_counter_ns() # 用自带time函数统计运行时长
for x in range(0, 101, 5): # 公鸡花费x元在0-100范围包括100步长为5
for y in range(0, 101 - x, 3): # 母鸡花费y元在0到100元减去公鸡花费钱数步长为3
z = 100 - x - y # 小鸡花费z元为100元减去x和y
if x / 5 + y / 3 + z * 3 == 100:
print("公鸡:%d只,母鸡:%d只,小鸡:%d" % (x / 5, y / 3, z * 3))
# pass
# end = time.perf_counter_ns()
# time1 = end - start
# print("解法一花费时间:", time1)
# 解法二:枚举法
# 解题思路若只买公鸡最多20只但要买100只固公鸡在0-20之间不包括20;若只买母鸡则在0-33之间不包括33;若只买小鸡则在0-100
# 之间不包括100
for x in range(0, 20):
for y in range(0, 33):
z = 100 - x - y # 小鸡个数z等于100只减去公鸡x只加母鸡y只
if 5 * x + 3 * y + z / 3 == 100: # 钱数相加等于100元
print("公鸡:%d只,母鸡:%d只,小鸡:%d" % (x, y, z))
# 解法三:解法和解法一类似
# 解题思路买一只公鸡花费5元剩余95元(注意考虑到不买公鸡的情况)再买一只母鸡花费3元剩余92元依次轮询下去钱数不断减
# 少100元不再是固定的。假设花费钱数依次为x、y、z元
for x in range(0, 101, 5): # 公鸡花费x元在0-100范围包括100步长为5
for y in range(0, 101 - x, 3): # 母鸡花费y元在0到100元减去公鸡花费钱数步长为3
for z in range(0, 101 - x - y):
if x / 5 + y / 3 + z * 3 == 100 and x + y + z == 100: # 花费和鸡数都是100
print("公鸡:%d只,母鸡:%d只,小鸡:%d" % (x / 5, y / 3, z * 3))
# 经典斐波那契数列
# 定义:https://wikimedia.org/api/rest_v1/media/math/render/svg/c374ba08c140de90c6cbb4c9b9fcd26e3f99ef56
# 用文字来说就是斐波那契数列由0和1开始之后的斐波那契系数就是由之前的两数相加而得出
# 方法一:使用递归
def fib1(n):
if n<0:
print("Incorrect input")
elif n==1:
return 0 # 第一个斐波那契数是0
elif n==2:
return 1 # 第二斐波那契数是1
else:
return fib1(n-1)+fib1(n-2)
print(fib1(2))
# 方法二:使用动态编程
FibArray = [0, 1]
def fib2(n):
if n < 0:
print("Incorrect input")
elif n <= len(FibArray):
return FibArray[n - 1]
else:
temp_fib = fib2(n - 1) + fib2(n - 2)
FibArray.append(temp_fib)
return temp_fib
# 方法三:空间优化
def fibonacci(n):
a = 0
b = 1
if n < 0:
print("Incorrect input")
elif n == 0:
return a
elif n == 1:
return b
else:
for i in range(2,n):
c = a + b
a = b
b = c
return b
# 水仙花数水仙花数即此数字是各位立方和等于这个数本身的数。例153 = 1**3 + 5**3 + 3**3
# 找出1-1000之间的水仙花数
# 分别四个数字1,2,3,4组成不重复的三位数。问题扩展对于给定数字或给定范围的数字组成不重复的n位数
# 方法一:解答四个数组成不重复三位数(暂未想到更优方法)
for x in range(1, 5):
for y in range(1, 5):
for z in range(1, 5):
if (x != y) and (x != z) and (z != y):
print(x, y, z)

@ -42,8 +42,9 @@ def scanner(port):
print("[*] Port {}: Open".format(port))
sock.close()
# Setup threading and calling the scan
for i in range(startPort, endPort+1):
for i in range(startPort, endPort + 1):
thread = Thread(target=scanner, args=(i,))
threads.append(thread)
thread.start()

@ -3,7 +3,7 @@ ab
Apache服务器的性能测试工具
## 补充说明
## 说明
**ab命令** 是Apache的Web服务器的性能测试工具它可以测试安装Web服务器每秒种处理的HTTP请求。

@ -3,7 +3,7 @@ accept
指示打印系统接受发往指定目标打印机的打印任务
## 补充说明
## 说明
**accept命令** 属于CUPS套件用于指示打印系统接受发往指定目标打印机的打印任务。

@ -3,7 +3,7 @@ alias
用来设置指令的别名
## 补充说明
## 说明
**alias命令** 用来设置指令的别名。我们可以使用该命令可以将一些较长的命令进行简化。使用alias时用户必须使用单引号`''`将原来的命令引起来,防止特殊字符导致错误。

@ -3,7 +3,7 @@ apt-key
管理Debian Linux系统中的软件包密钥
## 补充说明
## 说明
**apt-key命令** 用于管理Debian Linux系统中的软件包密钥。每个发布的deb包都是通过密钥认证的apt-key用来管理密钥。

@ -3,7 +3,7 @@ apt-sortpkgs
Debian Linux下对软件包索引文件进行排序的工具
## 补充说明
## 说明
**apt-sortpkgs命令** 是Debian Linux下对软件包索引文件进行排序的简单工具。

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

@ -3,7 +3,7 @@ arch
显示当前主机的硬件架构类型
## 补充说明
## 说明
**arch命令** 用于显示当前主机的硬件架构类型。arch命令等同于`命令name -m`在当前的Linux系统下,arch命令输出结果有:i386、i486、i586、alpha、sparc、arm、m68k、mips、ppc、i686等

@ -3,7 +3,7 @@ arj
用于创建和管理.arj压缩包
## 补充说明
## 说明
**arj命令** 是“.arj”格式的压缩文件的管理器用于创建和管理“.arj”压缩包。

@ -3,7 +3,7 @@ arp
显示和修改IP到MAC转换表
## 补充说明
## 说明
**arp命令** 用于操作主机的arp缓冲区它可以显示arp缓冲区中的所有条目、删除指定的条目或者添加静态的ip地址与MAC地址对应关系。

@ -3,7 +3,7 @@ arpd
收集免费ARP信息
## 补充说明
## 说明
**arpd命令** 是用来收集免费arp信息的一个守护进程它将收集到的信息保存在磁盘上或者在需要时提供给内核用户用于避免多余广播。

@ -3,7 +3,7 @@ arping
通过发送ARP协议报文测试网络
## 补充说明
## 说明
**arping命令** 是用于发送arp请求到一个相邻主机的工具arping使用arp数据包通过ping命令检查设备上的硬件地址。能够测试一个ip地址是否是在网络上已经被使用并能够获取更多设备信息。功能类似于ping。

@ -3,7 +3,7 @@ arptables
管理ARP包过滤规则表
## 补充说明
## 说明
**arptables命令** 用来设置、维护和检查Linux内核中的arp包过滤规则表。

@ -3,7 +3,7 @@ arpwatch
监听网络上ARP的记录
## 补充说明
## 说明
**arpwatch命令** 用来监听网络上arp的记录。

@ -3,7 +3,7 @@ as
汇编语言编译器
## 补充说明
## 说明
**as命令** GNU组织推出的一款汇编语言编译器它支持多种不同类型的处理器。

@ -3,7 +3,7 @@ at
在指定时间执行一个任务
## 补充说明
## 说明
**at命令** 用于在指定时间执行命令。at允许使用一套相当复杂的指定时间的方法。它能够接受在当天的hh:mm小时:分钟式的时间指定。假如该时间已过去那么就放在第二天执行。当然也能够使用midnight深夜noon中午teatime饮茶时间一般是下午4点等比较模糊的 词语来指定时间。用户还能够采用12小时计时制即在时间后面加上AM上午或PM下午来说明是上午还是下午。 也能够指定命令执行的具体日期指定格式为month day 或mm/dd/yy月/日/年或dd.mm.yy日.月.年)。指定的日期必须跟在指定时间的后面。

@ -1,23 +1,64 @@
atop
===
监控Linux系统资源与进程的工具
## 补充说明
[非内部程序,需要安装]它以一定的频率记录系统的运行状态,所采集的数据包含系统资源(CPU、内存、磁盘和网络)使用情况和进程运行情况并能以日志文件的方式保存在磁盘中服务器出现问题后我们可获取相应的atop日志文件进行分析。atop是一款开源软件我们可以从这里获得其源码和rpm安装包。
## 语法
```
atop(选项)(参数)
# **atop**
## 说明
[非内部程序,需要安装]它以一定的频率记录系统的运行状态,所采集的数据包含系统资源(CPU、内存、磁盘和网络)使用情况和进程运行情况并能以日志文件的方式保存在磁盘中服务器出现问题后我们可获取相应的atop日志文件进行分析。atop是一款开源软件我们可以从这里获得其源码和rpm安装包
## 选项
```markdown
Usage: atop [-flags] [interval [samples]]
or
Usage: atop -w file [-S] [-a] [interval [samples]]
atop -r [file] [-b hh:mm] [-e hh:mm] [-flags]
generic flags:
-V show version information
-a show or log all processes (i.s.o. active processes only)
-R calculate proportional set size (PSS) per process
-P generate parseable output for specified label(s)
-L alternate line length (default 80) in case of non-screen output
-f show fixed number of lines with system statistics
-F suppress sorting of system resources
-G suppress exited processes in output
-l show limited number of lines for certain resources
-y show individual threads
-1 show average-per-second i.s.o. total values
-x no colors in case of high occupation
-g show general process-info (default)
-m show memory-related process-info
-d show disk-related process-info
-n show network-related process-info
-s show scheduling-related process-info
-v show various process-info (ppid, user/group, date/time)
-c show command line per process
-o show own defined process-info
-u show cumulated process-info per user
-p show cumulated process-info per program (i.e. same name)
-j show cumulated process-info per container
-C sort processes in order of cpu consumption (default)
-M sort processes in order of memory consumption
-D sort processes in order of disk activity
-N sort processes in order of network activity
-E sort processes in order of GPU activity
-A sort processes in order of most active resource (auto mode)
specific flags for raw logfiles:
-w write raw data to file (compressed)
-r read raw data from file (compressed)
special file: y[y...] for yesterday (repeated)
-S finish atop automatically before midnight (i.s.o. #samples)
-b begin showing data from specified time
-e finish showing data after specified time
interval: number of seconds (minimum 0)
samples: number of intervals (minimum 1)
```
## 说明
**ATOP列**:该列显示了主机名、信息采样日期和时间点
**PRC列**:该列显示进程整体运行情况
*ATOP列*:该列显示了主机名、信息采样日期和时间点
*PRC列*:该列显示进程整体运行情况
- sys、usr字段分别指示进程在内核态和用户态的运行时间
- #proc字段指示进程总数
@ -25,7 +66,7 @@ atop(选项)(参数)
- #exit字段指示atop采样周期期间退出的进程数量
**CPU列**该列显示CPU整体(即多核CPU作为一个整体CPU资源)的使用情况我们知道CPU可被用于执行进程、处理中断也可处于空闲状态(空闲状态分两种一种是活动进程等待磁盘IO导致CPU空闲另一种是完全空闲)
*CPU列*该列显示CPU整体(即多核CPU作为一个整体CPU资源)的使用情况我们知道CPU可被用于执行进程、处理中断也可处于空闲状态(空闲状态分两种一种是活动进程等待磁盘IO导致CPU空闲另一种是完全空闲)
- sys、usr字段指示CPU被用于处理进程时进程在内核态、用户态所占CPU的时间比例
- irq字段指示CPU被用于处理中断的时间比例
@ -36,13 +77,13 @@ CPU列各个字段指示值相加结果为N00%其中N为cpu核数。
cpu列该列显示某一核cpu的使用情况各字段含义可参照CPU列各字段值相加结果为100%
**CPL列**该列显示CPU负载情况
*CPL列*该列显示CPU负载情况
- avg1、avg5和avg15字段过去1分钟、5分钟和15分钟内运行队列中的平均进程数量
- csw字段指示上下文交换次数
- intr字段指示中断发生次数
**MEM列**:该列指示内存的使用情况
*MEM列*:该列指示内存的使用情况
- tot字段指示物理内存总量
- free字段指示空闲内存的大小
@ -50,29 +91,29 @@ cpu列该列显示某一核cpu的使用情况各字段含义可参照CPU
- buff字段指示用于文件缓存的内存大小
- slab字段指示系统内核占用的内存大小
**SWP列**:该列指示交换空间的使用情况
*SWP列*:该列指示交换空间的使用情况
- tot字段指示交换区总量
- free字段指示空闲交换空间大小
**PAG列**:该列指示虚拟内存分页情况
*PAG列*:该列指示虚拟内存分页情况
swin、swout字段换入和换出内存页数
**DSK列**该列指示磁盘使用情况每一个磁盘设备对应一列如果有sdb设备那么增多一列DSK信息
*DSK列*该列指示磁盘使用情况每一个磁盘设备对应一列如果有sdb设备那么增多一列DSK信息
- sda字段磁盘设备标识
- busy字段磁盘忙时比例
- read、write字段读、写请求数量
**NET列**多列NET展示了网络状况包括传输层(TCP和UDP)、IP层以及各活动的网口信息
*NET列*多列NET展示了网络状况包括传输层(TCP和UDP)、IP层以及各活动的网口信息
- XXXi 字段指示各层或活动网口收包数目
- XXXo 字段指示各层或活动网口发包数目
## atop日志
```markdown
每个时间点采样页面组合起来就形成了一个atop日志文件我们可以使用"atop -r XXX"命令对日志文件进行查看。那以什么形式保存atop日志文件呢
对于atop日志文件的保存方式我们可以这样
@ -83,17 +124,13 @@ swin、swout字段换入和换出内存页数
其实atop开发者已经提供了以上日志保存方式相应的atop.daily脚本可以在源码目录下找到。在atop.daily脚本中我们可以通过修改INTERVAL变量改变atop信息采样周期(默认为10分钟);通过修改以下命令中的数值改变日志保存天数(默认为28天)
```
(sleep 3; find $LOGPATH -name 'atop_*' -mtime +28 -exec rm {} \; )&
```
最后,我们修改cron文件每天凌晨执行atop.daily脚本
修改cron文件每天凌晨执行atop.daily脚本
```
0 0 * * * root /etc/cron.daily/atop.daily
```
## 相关资料
- [官方手册](http://www.atoptool.nl/download/man_atop-1.pdf)

@ -3,7 +3,7 @@ atq
列出当前用户的at任务列表
## 补充说明
## 说明
**atq命令** 显示系统中待执行的任务列表也就是列出当前用户的at任务列表。

@ -3,7 +3,7 @@ atrm
删除待执行任务队列中的指定任务
## 补充说明
## 说明
**atrm命令** 用于删除待执行任务队列中的指定任务。

@ -3,7 +3,7 @@ axel
多线程下载工具
## 补充说明
## 说明
**axel** 是Linux下一个不错的HTTP/ftp高速下载工具。支持多线程下载、断点续传且可以从多个地址或者从一个地址的多个连接来下载同一个文件。适合网速不给力时多线程下载提高下载速度。比如在国内VPS或服务器上下载lnmp一键安装包用Axel就比wget快。

@ -3,7 +3,7 @@ badblocks
查找磁盘中损坏的区块
## 补充说明
## 说明
**badblock命令** 用于查找磁盘中损坏的区块。 硬盘是一个损耗设备当使用一段时间后可能会出现坏道等物理故障。电脑硬盘出现坏道后如果不及时更换或进行技术处理坏道就会越来越多并会造成频繁死机和数据丢失。最好的处理方式是更换磁盘但在临时的情况下应及时屏蔽坏道部分的扇区不要触动它们。badblocks就是一个很好的检查坏道位置的工具。

@ -3,7 +3,7 @@ basename
打印目录或者文件的基本名称
## 补充说明
## 说明
**basename命令** 用于打印目录或者文件的基本名称。basename和dirname命令通常用于shell脚本中的命令替换来指定和指定的输入文件名称有所差异的输出文件名称。

@ -3,7 +3,7 @@ batch
在系统不繁忙的时候执行定时任务
## 补充说明
## 说明
**batch命令** 用于在指定时间当系统不繁忙时执行任务用法与at相似。

@ -3,7 +3,7 @@ bc
算术操作精密运算工具
## 补充说明
## 说明
**bc命令** 是一种支持任意精度的交互执行的计算器语言。bash内置了对整数四则运算的支持但是并不支持浮点运算而bc命令可以很方便的进行浮点运算当然整数运算也不再话下。

@ -3,7 +3,7 @@ bg
用于将作业放到后台运行
## 补充说明
## 说明
**bg命令** 用于将作业放到后台运行,使前台可以执行其他任务。该命令的运行效果与在指令后面添加符号`&`的效果是相同的,都是将其放到系统后台执行。

@ -3,7 +3,7 @@ bind
显示或设置键盘按键与其相关的功能
## 补充说明
## 说明
**bind命令** 用于显示和设置命令行的键盘序列绑定功能。通过这一命令可以提高命令行中操作效率。您可以利用bind命令了解有哪些按键组合与其功能也可以自行指定要用哪些按键组合。

@ -3,7 +3,7 @@ blockdev
从命令行调用区块设备控制程序
## 补充说明
## 说明
**blockdev命令** 在命令调用“ioxtls”函数以实现对设备的控制。

@ -3,7 +3,7 @@ bmodinfo
显示给定模块的详细信息
## 补充说明
## 说明
**bmodinfo命令** 用于显示给定模块的详细信息。

@ -3,7 +3,7 @@ builtin
执行shell内部命令
## 补充说明
## 说明
**builtin命令** 用于执行指定的shell内部命令并返回内部命令的返回值。builtin命令在使用时将不能够再使用Linux中的外部命令。当系统中定义了与shell内部命令相同的函数时使用builtin显式地执行shell内部命令从而忽略定义的shell函数。

@ -3,7 +3,7 @@ bunzip2
创一个bz2文件压缩包
## 补充说明
## 说明
**bunzip2命令** 解压缩由bzip2指令创建的”.bz2"压缩包。对文件进行压缩与解压缩。此命令类似于“gzip/gunzip”命令只能对文件进行压缩。对于目录只能压缩目录下的所有文件压缩完成后在目录下生成以“.bz2”为后缀的压缩包。bunzip2其实是bzip2的符号链接即软链接因此压缩解压都可以通过bzip2实现。

@ -3,7 +3,7 @@ bye
命令用于中断FTP连线并结束程序。。
## 补充说明
## 说明
**bye命令** 在ftp模式下输入bye即可中断目前的连线作业并结束ftp的执行。

@ -3,7 +3,7 @@ bzcat
解压缩指定的.bz2文件
## 补充说明
## 说明
**bzcat命令** 解压缩指定的.bz2文件并显示解压缩后的文件内容。保留原压缩文件并且不生成解压缩后的文件。

@ -3,7 +3,7 @@ bzcmp
比较两个压缩包中的文件
## 补充说明
## 说明
**bzcmp命令** 主要功能是在不真正解压缩.bz2压缩包的情况下比较两个压缩包中的文件省去了解压缩后在调用cmp命令的过程。

@ -3,7 +3,7 @@ bzdiff
直接比较两个.bz2压缩包中文件的不同
## 补充说明
## 说明
**bzdiff命令** 用于直接比较两个“.bz2”压缩包中文件的不同省去了解压缩后再调用diff命令的过程。

@ -3,7 +3,7 @@ bzgrep
使用正则表达式搜索.bz2压缩包中文件
## 补充说明
## 说明
**bzgrep命令** 使用正则表达式搜索“.bz2”压缩包中文件将匹配的行显示到标注输出。

@ -3,7 +3,7 @@ bzip2recover
恢复被破坏的.bz2压缩包中的文件
## 补充说明
## 说明
**bzip2recover命令** 可用于恢复被破坏的“.bz2”压缩包中的文件。

@ -3,7 +3,7 @@ bzless
增强.bz2压缩包查看器
## 补充说明
## 说明
**bzless命令** 是增强“.bz2”压缩包查看器bzless比bzmore命令功能更加强大。

@ -3,7 +3,7 @@ bzmore
查看bzip2压缩过的文本文件的内容
## 补充说明
## 说明
**bzmore命令** 用于查看bzip2压缩过的文本文件的内容当下一屏显示不下时可以实现分屏显示。

@ -3,7 +3,7 @@ cal
显示当前日历或指定日期的日历
## 补充说明
## 说明
**cal命令** 用于显示当前日历,或者指定日期的日历。

@ -3,7 +3,7 @@ cancel
取消已存在的打印任务
## 补充说明
## 说明
**cancel命令** 用于取消已存在的打印任务。

@ -3,7 +3,7 @@ cdrecord
Linux系统下光盘刻录功能命令
## 补充说明
## 说明
**cdrecord命令** 用于Linux系统下光盘刻录它支持cd和DVD格式。linux下一般都带有cdrecord软件。

@ -3,7 +3,7 @@ chage
修改帐号和密码的有效期限
## 补充说明
## 说明
**chage命令** 是用来修改帐号和密码的有效期限。

@ -1,54 +1,43 @@
chattr
===
# **chattr**
用来改变文件属性
## 说明
## 补充说明
*chattr命令* 用来改变文件属性。这项指令可改变存放在ext2文件系统上的文件或目录属性这些属性共有以下8种模式
**chattr命令** 用来改变文件属性。这项指令可改变存放在ext2文件系统上的文件或目录属性这些属性共有以下8种模式
```markdown
-R 递归处理
-V 输出详细信息
-f 禁止大部分的错误信息输出
```
a让文件或目录仅供附加用途
b不更新文件或目录的最后存取时间
c将文件或目录压缩后存放
d将文件或目录排除在倾倒操作之外
i不得任意更动文件或目录
s保密性删除文件或目录
S即时更新文件或目录
u预防意外删除。
```
+-=[aAcCdDeijsStTu]
### 语法
+ 代表将某个属性添加到文件的属性中
- 代表移除某个属性
= 代表使某个属性成为文件的唯一属性
```
chattr(选项)
```
```
-R递归处理将指令目录下的所有文件及子目录一并处理
-v<版本编号>:设置文件或目录版本;
-V显示指令执行过程
+<属性>:开启文件或目录的该项属性;
-<属性>:关闭文件或目录的该项属性;
=<属性>:指定文件或目录的该项属性。
属性含义依次为:
a让文件或目录仅供附加用途
b不更新文件或目录的最后存取时间(atime)
c将文件或目录压缩后存放
C写入没有副本
d将文件或目录排除在倾倒操作之外即没有dump
D即时更新目录
eextent格式化
i不得任意更动文件或目录
j记录data
s保密性删除文件或目录
S即时更新文件
tno tail-merging
Ttop of directory hierarchy
u预防意外删除
```
### 实例
## 实例
用chattr命令防止系统中某个关键文件被修改
```bash
chattr +i /etc/fstab # 用chattr命令防止系统中某个关键文件被修改
chattr +a /data1/user_act.log # 让某个文件只能往里面追加内容,不能删除,一些日志文件适用于这种操作
```
chattr +i /etc/fstab
```
然后试一下rm、mv、rename等命令操作于该文件都是得到Operation not permitted的结果。
让某个文件只能往里面追加内容,不能删除,一些日志文件适用于这种操作:
```
chattr +a /data1/user_act.log
```

@ -3,7 +3,7 @@ chcon
修改对象(文件)的安全上下文
## 补充说明
## 说明
**chcon命令** 是修改对象(文件)的安全上下文,比如:用户、角色、类型、安全级别。也就是将每个文件的安全环境变更至指定环境。使用`--reference`选项时把指定文件的安全环境设置为与参考文件相同。chcon命令位于`/usr/bin/chcon`。

@ -3,7 +3,7 @@ chfn
用来改变finger命令显示的信息
## 补充说明
## 说明
**chfn命令** 用来改变finger命令显示的信息。这些信息都存放在/etc目录里的passwd文件里。若不指定任何选项则chfn命令会进入问答式界面。

@ -3,7 +3,7 @@ chgrp
用来变更文件或目录的所属群组
## 补充说明
## 说明
**chgrp命令** 用来改变文件或目录所属的用户组。该命令用来改变指定文件所属的用户组。其中组名可以是用户组的id也可以是用户组的组名。文件名可以 是由空格分开的要改变属组的文件列表,也可以是由通配符描述的文件集合。如果用户不是该文件的文件主或超级用户(root),则不能改变该文件的组。

@ -3,7 +3,7 @@ chkconfig
检查或设置系统的各种服务
## 补充说明
## 说明
**chkconfig命令** 检查、设置系统的各种服务。这是Red Hat公司遵循GPL规则所开发的程序它可查询操作系统在每一个执行等级中会执行哪些系统服务其中包括各类常驻服务。谨记chkconfig不是立即自动禁止或激活一个服务它只是简单的改变了符号连接。

@ -3,7 +3,7 @@ chmod
用来变更文件或目录的权限
## 补充说明
## 说明
**chmod命令** 用来变更文件或目录的权限。在UNIX系统家族里文件或目录权限的控制分别以读取、写入、执行3种一般权限来区分另有3种特殊权限可供运用。用户可以使用chmod指令去变更文件与目录的权限设置方式采用文字或数字代号皆可。符号连接的权限无法变更如果用户对符号连接修改权限其改变会作用在被连接的原始文件。

@ -3,7 +3,7 @@ chown
用来变更文件或目录的拥有者或所属群组
## 补充说明
## 说明
**chown命令** 改变某个文件或目录的所有者和所属的组该命令可以向某个用户授权使该用户变成指定文件的所有者或者改变文件所属的组。用户可以是用户或者是用户D用户组可以是组名或组id。文件名可以使由空格分开的文件列表在文件名中可以包含通配符。

@ -3,7 +3,7 @@ chpasswd
批量更新用户口令的工具
## 补充说明
## 说明
**chpasswd命令** 是批量更新用户口令的工具,是把一个文件内容重新定向添加到`/etc/shadow`中。

@ -3,7 +3,7 @@ chroot
把根目录换成指定的目的目录
## 补充说明
## 说明
**chroot命令** 用来在指定的根目录下运行指令。chroot即 change root directory (更改 root 目录)。在 linux 系统中,系统默认的目录结构都是以`/`,即是以根 (root) 开始的。而在使用 chroot 之后,系统的目录结构将以指定的位置作为`/`位置。

@ -3,7 +3,7 @@ chsh
用来更换登录系统时使用的shell
## 补充说明
## 说明
**chsh命令** 用来更换登录系统时使用的shell。若不指定任何参数与用户名称则chsh会以应答的方式进行设置。

@ -3,7 +3,7 @@ cksum
检查文件的CRC是否正确
## 补充说明
## 说明
**cksum命令** 是检查文件的CRC是否正确确保文件从一个系统传输到另一个系统的过程中不被损坏。这种方法要求校验和在源系统中被计算出来在目的系统中又被计算一次两个数字进行比较如果校验和相等则该文件被认为是正确传输了。

@ -3,7 +3,7 @@ clear
清除当前屏幕终端上的任何信息
## 补充说明
## 说明
**clear命令** 用于清除当前屏幕终端上的任何信息。

@ -3,7 +3,7 @@ clock
用于调整 RTC 时间。
## 补充说明
## 说明
**clock命令**用于调整 RTC 时间。 RTC 是电脑内建的硬件时间,执行这项指令可以显示现在时刻,调整硬件时钟的时间,将系统时间设成与硬件时钟之时间一致,或是把系统时间回存到硬件时钟。

@ -3,7 +3,7 @@ clockdiff
检测两台linux主机的时间差
## 补充说明
## 说明
在ip报文的首部和ICMP报文的首部都可以放入时间戳数据。 **clockdiff** 程序正是使用时间戳来测算目的主机和本地主机的系统时间差。

@ -3,7 +3,7 @@ cmp
比较两个文件是否有差异
## 补充说明
## 说明
**cmp命令** 用来比较两个文件是否有差异。当相互比较的两个文件完全一样时,则该指令不会显示任何信息。若发现有差异,预设会标示出第一个不通之处的字符和列数编号。若不指定任何文件名称或是所给予的文件名为“-”则cmp指令会从标准输入设备读取数据。

@ -3,7 +3,7 @@ col
过滤控制字符
## 补充说明
## 说明
**col命令** 是一个标准输入文本过滤器它从标注输入设备读取文本内容并把内容显示到标注输出设备。在许多UNIX说明文件里都有RLF控制字符。当我们运用shell特殊字符`>`和`>>`把说明文件的内容输出成纯文本文件时控制字符会变成乱码col命令则能有效滤除这些控制字符。

@ -3,7 +3,7 @@ colrm
删除文件中的指定列
## 补充说明
## 说明
**colrm命令** 用于删除文件中的指定列。colrm命令从标准输入设备读取书记转而输出到标准输出设备。如果不加任何参数则colrm命令不会过滤任何一行。

@ -3,7 +3,7 @@ comm
两个文件之间的比较
## 补充说明
## 说明
**comm命令** 可以用于两个文件之间的比较,它有一些选项可以用来调整输出,以便执行交集、求差、以及差集操作。

@ -3,7 +3,7 @@ command
调用并执行指定的命令
## 补充说明
## 说明
**command命令** 调用指定的指令并执行命令执行时不查询shell函数。command命令只能够执行shell内部的命令。

@ -3,7 +3,7 @@ compress
使用Lempress-Ziv编码压缩数据文件
## 补充说明
## 说明
**compress命令** 使用“Lempress-Ziv”编码压缩数据文件。compress是个历史悠久的压缩程序文件经它压缩后其名称后面会多出".Z"的扩展名。当要解压缩时可执行uncompress指令。事实上uncompress是指向compress的符号连接因此不论是压缩或解压缩都可通过compress指令单独完成。

@ -3,7 +3,7 @@ consoletype
输出已连接的终端类型
## 补充说明
## 说明
**consoletype命令** 用于打印已连接的终端类型到标准输出,并能够检查已连接的终端是当前终端还是虚拟终端。

@ -3,7 +3,7 @@ convertquota
把老的配额文件转换为新的格式
## 补充说明
## 说明
**convertquota命令** 用于将老的磁盘额数据文件“quota.user”和“quota.group”转换为新格式的文件“quota.user”和“quota.group”

@ -3,7 +3,7 @@ cp
将源文件或目录复制到目标文件或目录中
## 补充说明
## 说明
**cp命令** 用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件当一次复制多个文件时目标文件参数必须是一个已经存在的目录否则将出现错误。

@ -3,7 +3,7 @@ cpio
用来建立、还原备份档的工具程序
## 补充说明
## 说明
**cpio命令** 主要是用来建立或者还原备份档的工具程序cpio命令可以复制文件到归档包中或者从归档包中复制文件。

@ -3,7 +3,7 @@ crontab
提交和管理用户的需要周期性执行的任务
## 补充说明
## 说明
**crontab命令** 被用来提交和管理用户的需要周期性执行的任务与windows下的计划任务类似当安装完成操作系统后默认会安装此服务工具并且会自动启动crond进程crond进程每分钟会定期检查是否有要执行的任务如果有要执行的任务则自动执行该任务。

@ -3,7 +3,7 @@ csplit
将一个大文件分割成小的碎片文件
## 补充说明
## 说明
**csplit命令** 用于将一个大文件分割成小的碎片并且将分割后的每个碎片保存成一个文件。碎片文件的命名类似“xx00”“xx01”。csplit命令是split的一个变体split只能够根据文件大小或行数来分割但csplit能够根据文件本身特点来分割文件。

@ -3,7 +3,7 @@ cu
用于连接另一个系统主机。
## 补充说明
## 说明
**cu命令** 用于连接另一个系统主机。cu(call up)指令可连接另一台主机,并采用类似拨号终端机的接口工作,也可执行简易的文件传输作业。

@ -3,7 +3,7 @@ cupsdisable
停止指定的打印机
## 补充说明
## 说明
**cupsdisable命令** 用于停止指定的打印机。

@ -3,7 +3,7 @@ cupsenable
启动指定的打印机
## 补充说明
## 说明
**cupsenable命令** 用于启动指定的打印机。

@ -3,7 +3,7 @@ curl
利用URL规则在命令行下工作的文件传输工具
## 补充说明
## 说明
**curl命令** 是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载所以是综合传输工具但按传统习惯称curl为下载工具。作为一款强力工具curl支持包括HTTP、HTTPS、ftp等众多协议还支持POST、cookies、认证、从指定偏移处下载部分文件、用户代理字符串、限速、文件大小、进度条等特征。做网页处理流程和数据检索自动化curl可以祝一臂之力。

@ -3,7 +3,7 @@ declare
声明或显示shell变量
## 补充说明
## 说明
**declare命令** 用于声明和显示已存在的shell变量。当不提供变量名参数时显示所有shell变量。declare命令若不带任何参数选项则会显示所有shell变量及其值。declare的功能与typeset命令的功能是相同的。

@ -3,7 +3,7 @@ depmod
分析可载入模块的相依性
## 补充说明
## 说明
**depmod命令** 可产生模块依赖的映射文件在构建嵌入式系统时需要由这个命令来生成相应的文件由modprobe使用。

@ -3,7 +3,7 @@ df
显示磁盘的相关信息
## 补充说明
## 说明
**df命令** 用于显示磁盘分区上的可使用的磁盘空间。默认显示单位为KB。可以利用该命令来获取硬盘被占用了多少空间目前还剩下多少空间等信息。

@ -3,7 +3,7 @@ dhclient
动态获取或释放IP地址
## 补充说明
## 说明
**dhclient命令** 使用动态主机配置协议动态的配置网络接口的网络参数。

@ -3,7 +3,7 @@ dhcrelay
使用dhcrelay命令可以提供中继DHCP和BOOTP请求
## 补充说明
## 说明
**dhcrelay命令** 使用dhcrelay命令可以提供中继DHCP和BOOTP请求从一个没有DHCP服务器的子网直接连接到其它子网内的一个或多个DHCP服务器。该命令在DHCP中继服务器上使用同时支持DHCPv4/BOOTP和DHCPv6协议。

@ -3,7 +3,7 @@ diff
比较给定的两个文件的不同
## 补充说明
## 说明
**diff命令** 在最简单的情况下,比较给定的两个文件的不同。如果使用“-”代替“文件”参数则要比较的内容将来自标准输入。diff命令是以逐行的方式比较文本文件的异同处。如果该命令指定进行目录的比较则将会比较该目录中具有相同文件名的文件而不会对其子目录文件进行任何比较操作。

@ -3,7 +3,7 @@ diff3
比较3个文件不同的地方
## 补充说明
## 说明
**diff3命令** 用于比较3个文件将3个文件的不同的地方显示到标准输出。

@ -3,7 +3,7 @@ diffstat
显示diff命令输出信息的柱状图
## 补充说明
## 说明
**diffstat命令** 用来显示diff命令输出信息的柱状图用以显示diff命令比较两个文件的不同统计信息。用户也可以直接使用`|`将diff命令所输出的结果直接送给diffstat命令进行统计结果的显示。使用该命令时若所比较的文件或者子目录不在当前目录下则应该使用其完整路径。

@ -3,7 +3,7 @@ dig
域名查询工具
## 补充说明
## 说明
**dig命令** 是常用的域名查询工具,可以用来测试域名系统工作是否正常。

@ -3,7 +3,7 @@ dircolors
置ls命令在显示目录或文件时所用的色彩
## 补充说明
## 说明
**dircolors命令** 设置ls命令在显示目录或文件时所用的色彩。dircolors可根据[色彩配置文件]来设置LS_COLORS环境变量或是显示设置LS_COLORS环境变量的命令。

@ -3,7 +3,7 @@ dirname
去除文件名中的非目录部分
## 补充说明
## 说明
**dirname命令** 去除文件名中的非目录部分仅显示与目录有关的内容。dirname命令读取指定路径名保留最后一个`/`及其后面的字符,删除其他部分,并写结果到标准输出。如果最后一个`<cite>/</cite>`后无字符dirname 命令使用倒数第二个`/`并忽略其后的所有字符。dirname 和 basename 通常在 shell 内部命令替换使用,以指定一个与指定输入文件名略有差异的输出文件名。

@ -3,7 +3,7 @@ dirs
显示目录记录
## 补充说明
## 说明
**dirs命令** 显示当前目录栈中的所有记录不带参数的dirs命令显示当前目录栈中的记录。dirs始终显示当然目录, 再是堆栈中的内容;即使目录堆栈为空, dirs命令仍然只显示当然目录。

@ -3,7 +3,7 @@ dmesg
显示Linux系统启动信息
## 补充说明
## 说明
**dmesg命令** 被用于检查和控制内核的环形缓冲区。kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息可利用dmesg来查看。开机信息保存在`/var/log/dmesg`文件里。

@ -3,7 +3,7 @@ dnf
新一代的RPM软件包管理器
## 补充说明
## 说明
**DNF** 是新一代的rpm软件包管理器。他首先出现在 Fedora 18 这个发行版中。而最近它取代了yum正式成为 Fedora 22 的包管理器。

@ -3,7 +3,7 @@ dnsdomainname
定义DNS系统中FQDN名称的域名
## 补充说明
## 说明
**dnsdomainname命令** 用于定义DNS系统中FQDN名称中的域名。

@ -3,7 +3,7 @@ domainname
显示和设置系统的NIS域名
## 补充说明
## 说明
**domainname命令** 用于显示和设置系统的NIS域名。

@ -3,7 +3,7 @@ dos2unix
将DOS格式文本文件转换成Unix格式
## 补充说明
## 说明
**dos2unix命令** 用来将DOS格式的文本文件转换成UNIX格式的DOS/MAC to UNIX text file format converter。DOS下的文本文件是以`\r\n`作为断行标志的表示成十六进制就是0D 0A。而Unix下的文本文件是以\n作为断行标志的表示成十六进制就是0A。DOS格式的文本文件在Linux底下用较低版本的vi打开时行尾会显示`^M`而且很多命令都无法很好的处理这种格式的文件如果是个shell脚本。而Unix格式的文本文件在Windows下用Notepad打开时会拼在一起显示。因此产生了两种格式文件相互转换的需求对应的将UNIX格式文本文件转成成DOS格式的是unix2dos命令。

@ -3,7 +3,7 @@ dpkg-deb
Debian Linux下的软件包管理工具
## 补充说明
## 说明
**dpkg-deb命令** 是Debian Linux下的软件包管理工具它可以对软件包执行打包和解包操作以及提供软件包信息。

@ -3,7 +3,7 @@ dpkg-divert
Debian Linux中创建并管理一个转向列表
## 补充说明
## 说明
**dpkg-divert命令** 是Debian Linux中创建并管理一个转向diversion列表其使得安装文件的默认位置失效的工具。

@ -3,7 +3,7 @@ dpkg-preconfigure
Debian Linux中软件包安装之前询问问题
## 补充说明
## 说明
**dpkg-preconfigure命令** 用于在Debian Linux中软件包安装之前询问问题。

@ -3,7 +3,7 @@ dpkg-query
Debian Linux中软件包的查询工具
## 补充说明
## 说明
**dpkg-query命令** 是Debian Linux中软件包的查询工具它从dpkg软件包数据库中查询并辨识软件包的信息。

@ -3,7 +3,7 @@ dpkg-reconfigure
Debian Linux中重新配制一个已经安装的软件包
## 补充说明
## 说明
**dpkg-reconfigure命令** 是Debian Linux中重新配置已经安装过的软件包可以将一个或者多个已安装的软件包传递给此指令它将询问软件初次安装后的配置问题。

@ -3,7 +3,7 @@ dpkg-split
Debian Linux中将大软件包分割成小包
## 补充说明
## 说明
**dpkg-split命令** 用来将Debian Linux中的大软件包分割成小软件包它还能够将已分割的文件进行合并。

@ -3,7 +3,7 @@ dpkg-statoverride
Debian Linux中覆盖文件的所有权和模式
## 补充说明
## 说明
**dpkg-statoverride命令** 用于Debian Linux中覆盖文件的所有权和模式让dpkg于包安装时使得文件所有权与模式失效。

@ -3,7 +3,7 @@ dpkg-trigger
Debian Linux下的软件包触发器
## 补充说明
## 说明
**dpkg-trigger命令** 是Debian Linux下的软件包触发器。

@ -3,7 +3,7 @@ dris
显示和清空目录堆栈中的内容
## 补充说明
## 说明
**dris命令** 用于显示和清空目录堆栈中的内容。

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save