例如
echo "filename.pdf" | cut -d'.' -f 1
这样我就得到了“filename”字符串。 我想将它存储在一个名为FILE的变量中,然后像这样使用它:
DIR=$PATH/$FILE.txt
所以,我的脚本想要创建一个与pdf名称相同的file.txt(不是文件的副本,只是名称) 这样我试图分配echo的结果切
FILE=
但我只得到“path / .txt”,因此缺少文件名。
答案 0 :(得分:4)
FILE=$(echo "filename.pdf" | cut -d'.' -f 1)
答案 1 :(得分:2)
因此,我的脚本想要创建一个与pdf名称相同的file.txt
您可以使用BASH字符串操作:
s="filename.pdf"
p="${s/%.pdf/.txt}"
echo "$p"
filename.txt
答案 2 :(得分:1)
POSIX参数扩展将读取
file=filename.pdf
filename="${file%%.*}" # Two % will remove multiple extensions, if applicable
dir=$path/$filename.txt