我希望能够根据用户的输入删除文件。我有一个文件和目录列表编号如下所示。我希望用户能够选择任何数字来删除相应的文件。例如,如果用户输入2,则将删除DirectoryA(假设他们有权限)。基本上,我想匹配用户输入的数字与文件并删除文件。
以下是我的代码所示:
1. Directory1
2. DirectoryA
3. DirectoryB
4. Directory_C
---
5. File1
6. FileA
7. FileB
8. File_C
Please enter index of a file or directory to remove:
这是我的代码:
#!/bin/bash
if [[ $# -ge 1 ]]; then
cd "$1" 2> /dev/null
if [[ $? = 1 ]]; then
echo "Please enter a valid directory."
else
Dir="TRUE"
i=0
c=( $(ls --group-directories-first $*) )
count=0;
for f in ${c[@]}; do
if [[ ${Dir} == "TRUE" && ! -d ${f} ]]; then
echo ---
Dir="FALSE"
fi
echo "$((++count)). $f";
done
fi
echo "Please enter index of a file to remove: "
read input
else
Dir="TRUE"
i=0
c=( $(ls --group-directories-first $*) )
count=0;
for f in ${c[@]}; do
if [[ ${Dir} == "TRUE" && ! -d ${f} ]]; then
echo ---
Dir="FALSE"
fi
echo "$((++count)). $f";
done
fi
echo "Please enter index of a file to remove: "
read input
答案 0 :(得分:0)
试试这段代码。在每种情况下添加必要的操作以删除目录和文件。
<div id="uniqueId"></div>
<script>
var elem = document.getElementById('uniqueId');
var img = document.createElement('img');
img.setAttribute('src', PGL_BUT_PATH);
elem.appendChild(img);
</script>
答案 1 :(得分:0)
您可以使用bash select
内置(如已经提到的Etan Reisner)来简化代码。这是一个例子:
S3="Choose file or directory to delete: "
select FILENAME in *;
do
rm -rf $FILENAME
exit 0
done