我有一个文件../reports/[2015-10-01]-[2015-10-07]。它是一个大文件,因此当我尝试使用'split'命令进行拆分时,由于bash将[]作为字符类,我得到了错误提示。
我的剧本:

hdfs='hadoop fs'
startDate=$1
endDate=$2
reportPath="/reports/weeklyReport/[${startDate}]-[${endDate}]"
tmpWorkingDirectory="/tmp/weeklyReport"
filePrefix="WeeklyReport[${startDate}]-[${endDate}]-Part-"

if [ -d $tmpWorkingDirectory ]; then
    rm -rf $tmpWorkingDirectory
fi
mkdir $tmpWorkingDirectory
$hdfs -getmerge $reportPath $tmpWorkingDirectory/report.txt
split -d -C 10240000 $tmpWorkingDirectory/report.txt $filePrefix

.....

我遇到错误::



我尝试将转义符'\'与'['一起使用,但仍然无法正常工作。
请建议我如何阅读此文件。

最佳答案

...那呢? $hdfs -getmerge "$reportPath" "$tmpWorkingDirectory/report.txt"

关于bash - 如何使用bash命令读取名称中包含 '['和 ']'的文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33079059/

10-10 16:14