当前位置: 首页 > article >正文

shell脚本的使用

一、思维导图

 二、小练习

1、在家目录下创建目录文件dir1,把/etc/passwd拷贝到dir1中,把/etc/group拷贝到dir1中并重命名为grp.txt,使用tree指令,显示dir1目录的文件树,把dir1,分别压缩为dir1.tar.xz,dir1.tar.gz,dir1.tar.bz2

#!/bin/bash
mkdir dir1
cp /etc/group /home/ubuntu/dir1/grp.txt
tree /home/ubuntu/dir1
tar -cjvf dir1.tar.bz2  dir1
tar -cJvf dir1.tar.xz  dir1
tar -czvf dir1.tar.gz  dir1

截图

2、输出脚本的第11个外部参数和所有外部参数的个数

#!/bin/bash
echo  ${11}
echo $#

截图

3、尝试将read所有的指令结合输入一个变量

#!/bin/bash
read -sp 请输入一个数 -n 1 -t 3 arr1
echo
echo $arr1

 截图

4、使用命令置换符,获取到ubuntu用户在/etc/passwd中的行号,并赋值给变量。

#!/bin/bash
a=`grep ubuntu /etc/passwd -n | cut -d : -f 1`
echo $a

截图

5、写一个脚本,使用外部参数给数组赋值,并输出数组中元素的个数

#!/bin/bash
arr=($*)
echo ${#arr[*]}

截图

三、作业

 1、使用数组求出当前目录下.sh文件的个数

#!/bin/bash
arr=(`find /home/ubuntu/dir1 -name \*.sh`)
echo ${#arr[*]}

截图

 

2、使用数组求加目录下文件的个数

#!/bin/bash
cd 
arr=(`ls`)
echo ${#arr[*]}

截图


http://www.kler.cn/a/460338.html

相关文章:

  • 【基础还得练】EM算法中的E
  • 【Qt】信号和槽机制
  • 【MyBatis-Plus】让 MyBatis 更简单高效
  • 【Kafka 消息队列深度解析与应用】
  • 基于zynq在linux下的HDMI实战
  • labelme2yolov8-seg 草稿()
  • 头歌python:多进程和多线程
  • 年会头投票小游戏
  • 强化学习(1)
  • filament的材质系统
  • io多路复用, select, poll, epoll
  • 计算机因进程结束导致白屏
  • MySQL的多表查询与事务
  • node.js之---EventEmitter 类
  • 数据结构(哈希表)
  • 如何在TikTok上成功推广国际品牌?
  • HTML——20 自定义属性
  • 改进爬山算法之七:动态邻域爬山法(Dynamic Neighborhood Hill Climbing,DNHC)
  • 【项目实战】Apache JMeter HTTP 接口测试
  • CP AUTOSAR标准之FlexRayDriver(AUTOSAR_SWS_FlexRayDriver)(更新中……)