【发布时间】:2018-11-08 21:39:09
【问题描述】:
我正在编写一个名为 safeDel.sh 的 bash 脚本,其基本功能包括:
- 文件 [file1, file2, file3...]
- -l
- -t
- -d
- -m
- -k
- -r 参数
对于单字母参数,我使用的是内置函数 getops,它可以正常工作。我现在遇到的问题是“文件”参数。 'file' 参数应该采用要移动到如下目录的文件列表:
$ ./safeDel.sh file file1.txt file2.txt file3.txt
以下是我的程序开始的sn-p:
#! /bin/bash
files=("$@")
arg="$1"
echo "arguments: $arg $files"
echo 语句显示如下:
$ arguments : file file
如何将文件参数与必须移动到目录的文件分开?
【问题讨论】:
-
Shellcheck 发现代码 sn -p 的问题之一(数组变量使用不正确)。
-
使用数组,
echo "$files"就像echo "${files[0]}"
标签: bash command-line-arguments