对我来说(虽然是小问题,但持续存在的问题)的一个不断困扰是,在bash代码中我不能(或者不知道如何)将字符串跨多行拆分。以下是我的一段代码:
while getopts 'd:h' argv; do
case "${argv}" in
d) local target_dir="${OPTARG}" ;;
h)
printf "Usage: remove_file_end_strings [ -d <work directory> ] <string to remove>\n"
return 1
;;
esac
这里看起来还不错,因为没有换行,但是当限制在80个字符并自动换行时,显得非常凌乱。 我想要的是像Python或Ruby中那样简单的东西:
while getopts 'd:h' argv; do
case "${argv}" in
d) local target_dir="${OPTARG}" ;;
h)
printf "Usage: remove_file_end_strings [ -d <work "
"directory> ] <string to remove>\n"
return 1
;;
esac
我的谷歌搜索技巧已经让我失望了,有没有一种方法可以在bash中实现这个目标,或者我只能继续咬着木块努力了呢?
编辑:我已经决定采用次优解:
while getopts 'd:h' argv; do
case "${argv}" in
d) local target_dir="${OPTARG}" ;;
h)
printf "Usage: remove_file_end_strings [ -d <work "
printf "directory> ] <string to remove>\n"
return 1
;;
esac
done