【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

输出结果如下:

相关推荐
charlie11451419116 小时前
嵌入式Linux驱动开发——新 API 字符设备驱动完整教程 - 从设备结构体到应用测试
linux·运维·驱动开发
CHANG_THE_WORLD17 小时前
C语言中的 %*s 和 %.*s 和C++的字符串格式化输出
c语言·c++·c#
消失的旧时光-194317 小时前
C语言对象模型系列(四)《Linux 内核里的 container_of 到底是什么黑魔法?》—— 一篇讲透 Linux 内核的“对象模型”核心技巧
linux·c语言·算法
SWAGGY..17 小时前
Linux系统编程:(二)基础指令详解
linux·运维·服务器
kdxiaojie18 小时前
U-Boot分析【学习笔记】(3)
linux·笔记·学习
烛衔溟18 小时前
TypeScript 接口继承与混合类型
linux·ubuntu·typescript
2501_9318037518 小时前
Go:一门为解决C语言痛点而生的现代语言
c语言·开发语言·golang
蜡笔婧萱18 小时前
Linux--远程登录服务ssh
linux·服务器·ssh
qeen8718 小时前
【数据结构】二叉树相关经典函数C语言实现
c语言·数据结构·c++·笔记·学习·算法·二叉树
伏加特遇上西柚19 小时前
Loki+Alloy+Grafana日志采集部署
java·linux·服务器·spring boot·grafana·prometheus