后端开发技能学习(三) shell常用命令

后端开发技能学习(三) shell常用命令

字符串操作

汇总表:
在这里插入图片描述

根据位置截取
${string: start :length} # 从左边开始截
${string: 0-start :length} # 从右边开始截
# 栗子
$url="iamgod"
$echo ${url: 3:3}
god
$echo ${url: 0-6:3}
iam
根据指定字符截取

使用#号可以截取指定字符(或者子字符串)右边的所有字符,具体格式如下:

${
   string#*chars} # 截取第一次匹配后的结果
${
   string##*chars} # 截取最后一次匹配后的结果

其中,string 表示要截取的字符,chars 是指定的字符(或者子字符串),*是通配符的一种,表示任意长度的字符串。*chars连起来使用的意思是:忽略左边的所有字符,直到遇见 chars(chars 不会被截取)。

# 栗子
$ echo ${
   a#*m}
god

使用%号可以截取指定字符(或者子字符串)左边的所有字符,具体格式如下:

${string%chars*} # 截取第一次匹配后的结果

请注意*的位置,因为要截取 chars 左边的字符,而忽略 chars 右边的字符,所以 *应该位于 chars 的右侧。其他方面%和#的用法相同

查找

find

find用于对文件进行查找
格式:find pathname -options [-print -exec -ok …]
参数:
pathname:目录
options:选项
-print:输出匹配结果
-exec:对匹配的文件进行操作
-ok:同上,不过会给出提示

option 含义
-name 按文件名查找
-perm 按文件权限查找
-prune
-user 按照文件属主查找
-group 按文件属组查找
-mtime 按照文件更改时间查找
-nogroup 无组文件查找
-nouser 无主文件查找
-newer f1 ! f2 比f1新比f2旧的文件
-size n 查找文件长度为n
depth 在子目录继续查找
-follow 遇到符号链接,跟踪到指向的文件
-type 指定类型文件

栗子:

$ find . -name "test.sh" # 查找名称为test.sh的文件
$ find . -name test.sh | xargs sh # 查找该文件并执行
$find /apps -path "/apps/bin" -prune -o -print # 避开bin目录查找
$ find . -size +100000c -print # 查找大于1M字节的文件(不加c表示块,即512字节)
type 类型
b 块设备文件
d 目录
c 字符设备文件
p 管道文件
l 符号链接文件
f 普通文件
grep

grep用于对文件内容进行查找
通用格式:
grep [option] “string_to_find” filename
选项:

option full name meaning
-a - -text 不忽略二进制数据
-A<行数> –after-contxt<行数> 显示查找行后n行的内容
-B<行数> –before-context 显示查找行前n行的内容
-c –count 计算符合条件的行数量
-C –context 显示改行前后的内容
-d –directories # 可以用于对目录进行查找
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值