写一个shell列出目录下的所有文件并进行编号,同选择编号,同过选项选择需要删除的文件并进行删除
时间: 2023-03-22 18:00:40 浏览: 98
linux shell命令
以下是一个可以实现您所述功能的shell脚本:
```bash
#!/bin/bash
# 列出目录下的所有文件并进行编号
files=($(ls))
for ((i=0; i<${#files[@]}; i++)); do
echo "$i. ${files[$i]}"
done
# 选择需要删除的文件并进行删除
read -p "输入要删除的文件的编号(多个编号以空格分隔):" input
array=($input)
for i in "${array[@]}"; do
rm "${files[$i]}"
done
```
这个脚本首先通过`ls`命令列出目录下的所有文件,并将它们存储在一个数组中。然后,它遍历该数组并为每个文件打印一个编号。接着,它要求用户输入要删除的文件的编号,将输入分割成一个数组,并在循环中使用`rm`命令删除每个文件。
阅读全文