• 忘掉天地
  • 仿佛也想不起自己
bingliaolongBingliaolong  2020-09-04 03:49 Aet 隐藏边栏 |   抢沙发  2 
文章评分 1 次,平均分 5.0

A

alias

用于给命令起别名
alias 别名=命令序列

示例

alias lly='ls-l /home/aet'
alias kind='ls |cut -d- -f2-| cut -d- -f2| sort| uniq -c'

apt-get

apt-get用于系统对软件的管理
apt-get 操作

update #更新本地数据库
upgrade 软件包 #更新软件包,没有指定软件包时升级所有软件包
check #验证本地系统的完整性
dist-upgrade #安装所有的基础软件包
install 软件包 #安装软件包
remove 软件包 #删除软件包
source 软件包 #下载软件包的source
clean #删除保存在缓存目录(/var/cache/apt/archives/)下的软件包

示例

apt-get upgrade
apt-get autoclean #清除无用的软件和记录
apt-get autoremove #删除系统不再使用的孤立软件
apt-get autoremove --purge #会把这些孤立软件的残留配置文件也一并移除

aptitude

用于管理软件包以及依赖包
aptitude 操作选项

update #更新可用的包列表
upgrade #升级可用的包
dist-upgrade #升级系统
install 软件包 #安装包
remove 软件包 #删除包
purge 软件包 #删除包及其配置文件
search 软件包 #搜索软件包
show 软件包 #查看软件包详细信息
clean #删除下载的包文件
autoclean #仅删除过期的包文件

示例

aptitude show gedit

arping

用于对指定ip的主机发送arp包,获取硬件信息
arping 选项 主机地址

-A #ARP回复模式,更新邻居
-b #用于发送广播帧
-D #复制地址检测模式
-f #得到第一个回复就退出
-q #不显示警告信息
-U #主动的ARP模式,更新邻居
-c 数字 #发送的数据包的数目
-w 时间 #设置超时时间,到了指定时间没有完全响应就退出
-I 网卡号 #使用指定的以太网设备,默认情况下使用eth0
-s #指定源IP地址
-h #显示帮助信息
-V #显示版本信息

示例

arping 10.4.20.127 #发送arp请求
arping -f 10.4.20.127 #收到第一个响应就退出
arping -c 5 10.4.20.127 #发送5次

aspell

用于检查单词拼写中的错误
aspell 选项

-c input # 以交互式的方法来告诉操作者, 输入中的拼写错误. 不接受标准输入

  • 并提供可替换选项以及其他操作, 只需要选择提供的操作前面的字符就行.
  • 按照顺序执行, 在前一个错误被纠正之后会提示下一个错误.

-l input # 批处理的方式显示输入中所有的拼写错误. 不接收标准输入

示例

aspell list <file

awk

awk是一种可以处理数据并产生格式化报表的语言,gawk是awk的升级版本.
awk 选项 awk命令 待处理文件

常用选项

-F #指定读入的每条记录中的分隔符
-f #awk语法脚本

awk内置变量

ARGC #命令行参数个数
ARGV #命令行参数排列
ENVIRON #支持队列中系统环境变量的使用
FILENAME #awk浏览的文件名
FNR #浏览文件的记录数
FS #设置输入域分隔符,等价于命令行 -F选项
NF #浏览记录的段的个数
NR #已读的记录数
OFS #输出各段间的分隔符
ORS #输出各记录间的分隔符
RS #控制记录分隔符

常见的awk函数

1.print,printf
这是两种输出函数,可指定输出格式和内容.
print函数的参数可以是变量,数值或者字符串.字符串必须用双引号引用,参数用逗号分隔.如果没有逗号,参数就串联在一起而无法区分.输出的每个参数之间使用空格作为分隔符.
对于printf函数,其用法和c语言中printf基本相似,可以格式化字符串,输出复杂时,printf更加好用,代码更易懂.

2.gsub(r,s)
将一条记录($0)中的r数据替换成s数据.

3.gsub(r,s,t)
将t指定的字段中的r数据替换成s数据.

4.index(s,t)
获取在字符串t中第一次出现s的位置

5.length(s)
获取s的长度

6.match(s,r)
测试s中是否包含有r数据

7.substr(s,p,n)
获取字符串s中从p位置开始长度为n的子字符串.

8.getline
获取文件中新的一条记录

9.sub(r,t)
将字符串中符合r格式的内容替换为t.

10.tolower(s)
将字符串中的内容全部转为小写. 一般在字符匹配的过程中如果不考虑大小写的话建议先使用该函数对字符串转为小写或者使用下面的转为大写.

11.toupper(s)将字符串中的内容全部转为大写.

注意

1.awk的工作流程:
a:将输入数据按照'\n'换行符分割成一条条的记录,每次读取一条记录.
b:按照IFS的其他两个选项(空格,tab),将一条数据分割成多个段.
c:按照awk命令指定的方式处理每条记录.

2.awk命令的结构为'BEGIN{} 样式{} END{}',其中各段含义({}中为具体操作):
BEGIN{}:在处理待处理文件之前做的操作.
样式{}:按照样式重复检查每条记录,对符合样式的记录执行'{}'中的操作.
END{}:在处理完所有记录之后做的操作.
以上的三种操作都是awk命令的可选部分,他们中的任何一部分都可以不出现在awk命令中.

3.如果没指定样式,默认对所有的记录都执行'{}'中的操作.如果没有指定操作方式,默认输出符合样式的记录.

4.对于任意一条记录,按照指定的分隔符划分成段.
$0表示这条记录的所有段.
$n表示这条记录的第n段(n为数字).

5.awk是一种语言,通过在花括号'{}'括起来的awk语句完成具体操作.awk有自己的内置变量和函数,通过这些和自己创建的变量,函数来完成具体的操作.
一个操作({})中可以有多个语句,每条语句之间使用;隔开.

6.awk语法中条件语句的写法(从C语言借鉴的):

7.常见的条件操作符有:
< #小于关系
<= #小于等于关系
== #相等关系
!= #不等于关系

>= #大于等于关系
> #大于关系
~/正则表达式/ #左侧是否符合右侧的正则表达式
!~/正则表达式/ #左侧是否不符合右侧的正则表达式

8.awk中的循环语句同样借鉴于C语言,支持while、do/while、for、break、continue,这些关键字的语义和C语言中的语义完全相同.

9.awk中也可以使用数组,数组的下标有两种形式:数字或字符串,类似于shell中的数组.数组的键值对是是按照hash排序的,存储循序不一定和插入顺序相同.

10.awk中使用&&,||表示且,或的关系.

11.awk中使用的正则表达式会从最左侧开始匹配到第一个符合格式的最长子字符串

12.如果要使用正则表达式与某一个内容比较, 可以通过格式:带比较的内容 ~ 正则表达式或者带比较的字符串 !~ 正则表达式来实现.

示例

awk '/ls/' data #显示含有ls的行
awk '{print $1, $2}' data #显示每行中的第一二个字段
awk '/ls/{print $1}' data #显示含有ls的行中第一个字段

B

bash

bash命令可以执行脚本文件
bash 文件名

常用选项

-v #检查文件中的语法错误
-n #显示文件中所有的程序行
-x #追踪文件的执行过程

示例

bash -v base.sh #检查base.sh中的语法错误
bash -n base.sh #显示所有程序行
bash -x base.sh #追踪shell脚本的执行过程,将每句话打印出来

bc

用于数学运算的高级工具
bc 文件

注意

1.bc只能从文件中读取算数表达式,包括stdin.
2.bc中有一些参数可以改变运算操作,将这些参数置于具体的运算前,并用分号隔开

符号 含义
scale=数字 设定小数精度,shell除法默认结果为整数,此参数可以修改
obase=数字 用于进制转换
sqrt(数字) 计算平方根
数字^数字 幂运算

示例

echo "scale=3;3/8" | bc #精确到小数点后3位
echo 'obase=2;100' | bc #将100转化为2进制
echo "sqrt(100)" | bc #100的平方根

bg

bg可将进程置为后台进程.
bg 作业编号

1.如果不指定作业编号的话,会把首个工作置为后台进程.
2.将作业编号可用jobs -l查看

示例

bg 3 #至3号作业为后台作业

basename

获取字符串参数的基本文件名称,并去掉其中符合样式的部分
语法:basename 字符串 样式

1.如果字符串中只包含/(数量不限),输出将为/.
2.如果字符串以/结尾,去掉结尾的/.
3.如果字符串中包含/,但并不在结尾位置,去掉/和/之前的所有字符.
4.以上得到的结果,如果和样式是同一字符串,则输出.如果不同,去掉结果中符合样式的部分,将剩余的字符串输出.

示例

basename /home/youyou/task #显示文件名task
basename /////
basename /etc/
basename /home/getdia.reg .reg
basename /home/reg reg

C

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

bingliaolong
Bingliaolong 关注:0    粉丝:0 最后编辑于:2021-11-20
Everything will be better.

发表评论

表情 格式 链接 私密 签到
扫一扫二维码分享