使用选项参数运行脚本

时间:2013-11-22 14:27:18

标签: linux bash

我想选择-d一个目录,我想在主目录中备份

我有这个脚本:

#!/bin/bash-

date_created="backup-`date +"%Y%m%d-%H%M"`";
backup_directory_name=$date_created;
directory="backup/";

getopts d:t: option;

case $option in
    d)
            directory=$1;
    ;;

    t)
            backup_directory_name=$1;
    ;;
esac

cd ~;
tar cvpfz $backup_directory_name.tgz $directory;

当我使用选项时它不会运行,我得到以下错误:

tar:您不能指定多个-Acdtrux--test-label选项 请尝试tar --help' or tar --usage'以获取更多信息。

1 个答案:

答案 0 :(得分:1)

您可能需要将其重新编写为getopts()的循环:

while getopts "..." opt ; do
    case $opt in
    ...
done

shift $((OPTIND-1))