在执行这个操作时,我的文件名末尾会出现一个不想要的“?”符号:
emplid=$(grep -a "Student ID" "$i".txt | sed 's/(Student ID: //g' | sed 's/)Tj//g' )
#gets emplid by doing a grep from some text file
echo "$emplid" #prints employee id correctly
cp "$i" "$emplid".pdf #getting an extra '?' character after emplid and before .pdf
即,我得到的文件名不是123456.pdf,而是123456?.pdf。 如果echo打印正确,为什么会出现这种情况? 如何删除后面的问号字符?
cp "$i" "$emplid".pdf
,但在"$i"
上没有.txt
,文件是否被正确复制?如果是,请尝试在cp
行中删除$i
和$emplid
周围的引号。 - sampson-chen