Erlo

Bash Shell基础笔记

时间:2020-05-26 15:00   阅读:37次   来源:博客园
页面报错
点赞

常见shell种类

1 Bourne Shell(/usr/bin/sh或/bin/sh)
2 Bourne Again Shell(/bin/bash)
3 C Shell(/usr/bin/csh)
4 K Shell(/usr/bin/ksh)
5 Shell for Root(/sbin/sh)

 

 切换root管理员

 

注释

#!解析器路径
#单行注释
<<BLOCK
多行注释
BLOCK

: '
多行注释
'
name变量命名后面可以为"和‘
echo "¥变量" 一定要双引号
echo打印输出

 

 

 

文件系统

 

 

第一列:
常规文件(-)
目录(d)
链接(l)
特殊档案(c)
套接(s)
命名管道(p)
块设备(b)
第二列代表存储块的数量
第三列代表文件的所有者或具有管理权限的超级用户
第四列代表所有者/超级用户组
第五列代表文件大小
第六列表示创建或最后修改文件的日期和时间
最后一列代表文件或目录的名称

r 读
w 写
x 执行

  • 第一个插位(-)表示由test.sh命名的文件:文件(-)、目录(d),链接(l)
  • 前三个插位(rwx)代表所有者(owner)的权限:文件所有者的权限是读、写和执行
  • 中三个插位代表所属组(group)的权限,r-x代表有读和执行权限,没有写权限
  • 后三个插位代表其他者(others)的权限,同样是读和执行权限,没有写权限

r=4,w=2,x=1  因此rwx=4+2+1=7

- 1 表示连接的文件数

 root 表示用户

-root表示用户所在的组

25 表示文件大小(字节)

表示最后修改日期

 test.sh表示文件名

更改权限

 

chmod [class][operator][permission] file_name 

  • class-ugoa表示,其中u表示用户,g表示组,o表示其他,以及a对所有类。
  • operator(+-)用于添加或删除权限。
  • permission由指示符rwx表示,以分别允许访问以读取,修改或运行脚本。

 

路径

  • 单点(.)代表当前目录。
  • 双点(..)代表当前工作目录的父目录。
  • 波浪号(~)代表已登录用户的主目录。

 

命令行参数或特殊变量

  • $0 - 指定要调用的脚本的名称。
  • $1-$9 - 存储前9个自变量的名称,或可用作自变量的位置。
  • $# - 指定传递给脚本的参数总数(计数)。
  • $* - 通过将所有命令行参数连接在一起来存储它们。
  • $@ - 将参数列表存储为数组。
  • $? - 指定当前脚本的进程ID。
  • $$ - 指定最后一个命令或最近执行过程的退出状态。
  • $! - 显示最后一个后台作业的ID。

 

 

 

 

用户输入

 read方式,如果不用read变量默认REPLY

-p 可以在同一行上输入,-sp例如输入密码输入不是明文

read -p PROMPT <variable_name>

read -sp PROMPT <variable_name>

-a     数组

 

 

 

 

 

 日期时间

date '+<format-option-codes><format-option-codes> <format-option-codes>'

符号是`不是'

 

 

 

 

 运算

 

 

 条件判断

参数直间有空格

 

 

 for语句

 

 

 

 

 

 

{START..END..INCREMENT}

 

字符串

 

 

 

if [ -n str1 ]      当串的长度大于0时为真(串非空) 
if [ -z str1 ]      当串的长度为0时为真(空串) 
if [ str1 ]        当串str1为非空时为真

 

 

 

 

截取

${variable:offset:length}

 

 

参考https://www.yiibai.com/bash

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

评论留言

还没有评论留言,赶紧来抢楼吧~~

吐槽小黑屋()

* 这里是“吐槽小黑屋”,所有人可看,只保留当天信息。

  • Erlo吐槽

    Erlo.vip2020-07-08 08:25:45Hello、欢迎使用吐槽小黑屋,这就是个吐槽的地方。
  • 返回顶部