我对Bash还比较陌生,所以这可能是一些微不足道的东西,但我就是不懂。我正在尝试转义文件名中的空格。看一下这个例子。请注意,这只是一个“工作示例” - 我知道用空白页面交替文件可能会更容易实现,但我关心的是空格。
#! /bin/sh
first=true
i=combined.pdf
o=combined2.pdf
for f in test/*.pdf
do
if $first; then
first=false
ifile=\"$f\"
else
ifile=$i\ \"$f\"
fi
pdftk $ifile blank.pdf cat output $o
t=$i
i=$o
o=$t
break
done
假设我有一个名为`my file.pdf`(包含空格)的文件。我希望`ifile`变量包含字符串`combined.pdf "my file.pdf"`,以便pdftk能够将其用作两个文件参数——第一个是`combined.pdf`,第二个是`my file.pdf`。
我尝试过各种转义方式(是否需要首先转义引号等),但在执行pdftk时它仍会分割`my`和`file.pdf`。
编辑:澄清一下:我正在尝试将多个文件名(作为多个参数)传递给pdftk命令。我希望它能识别两个文件名之间的差异,但不要将一个文件名拆分成多个部分。
pdftk "$i" "$f" ...
- glenn jackman