我将文件条目读入如下数组:
readarray files < $MY_DIR/file_list.cfg
file_list.cfg
可能如下所示:
1 file1.cfg
2 some_other_file.cfg
3 yet_another_file_name
如何在bash中删除实际文件名之前的任何数字和空格。我希望在读取数组后修改数组,而不是在填充数组时过滤内容。
答案 0 :(得分:1)
填充数组后(使用-t
开关删除尾随换行符,并使用小写变量名称):
mapfile -t files < "$my_dir/file_list.cfg"
您可以使用参数扩展:
files_clean=( "${files[@]##+([[:digit:][:space:]])}" )
这假设您有extglob
shell选项。使用
shopt -s extglob
打开它。