【C高级】有关shell脚本的一些练习

目录

1、写一个shell脚本,将以下内容放到脚本中:

2、写一个脚本,包含以下内容:


1、写一个shell脚本,将以下内容放到脚本中:

1、在家目录下创建目录文件,dir

2、dir下创建dir1和dir2

3、把当前目录下的所有文件拷贝到dir1中,

4、把当前目录下的所有脚本文件拷贝到dir2中

5、把dir2打包并压缩为dir2.tar.xz

6、再把dir2.tar.xz移动到dir1中

7、解压dir1中的压缩包

cs 复制代码
#!/bin/bash

#在家目录下创建目录文件dir
`mkdir ~/dir`

#在dir下创建dir1和dir2
`mkdir ~/dir/dir1 ~/dir/dir2`

#把当前目录下的所有文件拷贝到dir1中
$(cp * ~/dir/dir1/)

# 切换到dir目录
$(cd ~/dir)

#把当前目录下的所有脚本文件拷贝到dir2中
$(cp *.sh ~/dir/dir2/)

#把dir2打包并压缩为dir2.tar.xz
`tar -cJf ~/dir/dir2.tar.xz -C ~/dir dir2` 

#把dir2.tar.xz移动到dir1中
`mv ~/dir/dir2.tar.xz ~/dir/dir1/`

#解压缩dir1中的压缩包
$(tar -xvf ~/dir/dir1/dir2.tar.xz -C ~/dir/dir1/)

输出结果如下:


2、写一个脚本,包含以下内容:

1、显示/etc/group文件中第五行的内容

2、创建目录/home/ubuntu/copy

3、切换工作路径到此目录

4、复制/etc/shadow到此目录,并重命名为test

5、将当前目录中test的所属用户改为root

6、将test中其他用户的权限改为没有任何权限

cs 复制代码
#!/bin/bash

# a. 显示/etc/group文件中第五行的内容
sudo head -n 5 /etc/group | tail -n 1

# b. 创建目录/home/ubuntu/copy
sudo mkdir -p /home/ubuntu/copy

# c. 切换工作路径到此目录
cd /home/ubuntu/copy

# d. 复制/etc/shadow到此目录,并重命名为test
sudo cp /etc/shadow /home/ubuntu/copy/test

# e. 将当前目录中test的所属用户改为root
sudo chown root:root /home/ubuntu/copy/test

# f. 将test中其他用户的权限改为没有任何权限
sudo chmod a-rwx /home/ubuntu/copy/test

# 输出当前目录中的文件权限,以便检查
ls -l /home/ubuntu/copy/test

输出结果如下:

相关推荐
闭着眼睛学算法1 天前
【双机位A卷】华为OD笔试之【排序】双机位A-银行插队【Py/Java/C++/C/JS/Go六种语言】【欧弟算法】全网注释最详细分类最全的华子OD真题题解
java·c语言·javascript·c++·python·算法·华为od
nono牛1 天前
MTK平台详解`adb devices`输出的序列号组成
android·linux·adb·智能手机
catoop1 天前
Linux 自动清理临时文件配置
linux·服务器
Xの哲學1 天前
Linux eMMC子系统深度解析:从硬件协议到内核实现
linux·网络·算法·架构·边缘计算
亚林瓜子1 天前
在amazon linux 2023上面通过Fedora 36软件仓库源安装tesseract5
linux·运维·服务器·ocr·tesseract·amazon·fedor
是专家不是砖家1 天前
linux USB摄像头不停掉线问题
linux·运维·服务器
yuanManGan1 天前
走进Linux的世界:初识进程(Task)
linux·运维·服务器
NiKo_W1 天前
Linux UdpSocket的应用
linux·服务器·网络·内核·线程
AI柠檬1 天前
C语言基于MPI并行计算矩阵的乘法
c语言·c++·算法
稚辉君.MCA_P8_Java1 天前
深入理解 TCP;场景复现,掌握鲜为人知的细节
java·linux·网络·tcp/ip·kubernetes