写一个shell脚本,循环创建10个2kb的文件并删除
时间: 2024-10-25 15:05:47 浏览: 30
你可以编写一个简单的Shell脚本来实现这个功能。下面是一个示例脚本,它会创建10个2KB大小的文件,并逐个删除:
```bash
#!/bin/bash
# 定义文件大小(这里为2KB)
FILE_SIZE=2048
# 循环次数
COUNT=10
# 创建文件并计数
for ((i = 1; i <= COUNT; i++)); do
# 文件名前缀
FILE_NAME="file_$i"
# 创建文件
touch -b ${FILE_NAME}.txt
echo "Created file $FILE_NAME.txt with size ${FILE_SIZE} bytes."
# 检查文件大小
if [ -s ${FILE_NAME}.txt ]; then
echo "File $FILE_NAME.txt has the expected size."
else
echo "Error: File $FILE_NAME.txt is not created properly."
break
fi
# 删除当前文件
rm ${FILE_NAME}.txt
echo "Deleted file $FILE_NAME.txt."
done
echo "Script completed."
相关问题
shell 脚本压缩图片
您可以使用以下步骤来编写一个shell脚本来压缩图片:
1. 创建一个新的shell脚本文件,例如compress_images.sh。
2. 在脚本中添加以下代码来查找60分钟以内曾被修改过的图片文件,并且大于100kb的图片才会进行压缩:
```
#!/bin/bash
find /path/to/images -type f -mmin -60 -size +100k \( -name "*.jpg" -o -name "*.png" \) -print0 | while read -d $'\0' file
do
# 压缩图片的代码
done
```
3. 在while循环中添加压缩图片的代码。您可以使用sips命令来压缩图片。例如,以下代码将压缩png格式的图片:
```
sips -s format png -Z 1024 "$file" --out "${file%.*}_compressed.png"
```
这将把图片压缩到1024像素的宽度,并将其保存为原始文件名加上"_compressed"的新文件。
4. 保存并关闭脚本文件。
5. 在终端中运行以下命令来使脚本文件可执行:
```
chmod +x compress_images.sh
```
6. 运行脚本文件:
```
./compress_images.sh
```
这将在指定的路径中查找并压缩符合条件的图片文件。
使用shell dd命令对NVME盘进行稳定压测的脚本
使用shell脚本来对NVMe(下一代存储设备)进行稳定压测,一般会结合`dd`命令和其他脚本语言如bash来实现。以下是一个简单的bash脚本示例,用于对NVMe进行连续读写的压测:
```bash
#!/bin/bash
# NVMe设备名称
DEVICE="/dev/nvme0n1"
# 块大小 (根据设备性能调整)
BLOCK_SIZE=512K # 或者1M, 4M等,以KB为单位
# 初始化大文件
INPUT_FILE="largefile.bin"
rm -f $INPUT_FILE
dd if=/dev/zero of=$INPUT_FILE bs=$BLOCK_SIZE count=$((1024 * 1024)) # 生成1GB的全零文件
# 压测开始
echo "Starting I/O stress test..."
for i in {1..10} ; do
# 写入文件
echo "Writing to device ($i/10)..."
dd if=$INPUT_FILE of=$DEVICE seek=$((i * 10)) bs=$BLOCK_SIZE oflag=direct
# 每次写入后进行短暂停顿以允许设备处理
sleep 10s
# 如果需要,可以选择同步写入,避免写入缓存
# sync
# 阅读回查以验证数据完整性
echo "Reading from device ($i/10)..."
dd if=$DEVICE of=$INPUT_FILE skip=$((i * 10)) bs=$BLOCK_SIZE iflag=direct | md5sum -c
done
echo "Test completed."
```
此脚本首先创建一个全零文件,然后循环进行写入和读取,每次写入后稍作休息,然后读回确认数据一致性。你可以根据实际情况修改脚本参数,比如循环次数、文件大小和写入间隔等。
阅读全文