2014-01-22 95 views
0

我是linux新手,希望使用toolchain從asciidoc創建pdf。shell腳本從asciidoc創建pdf

在shell運行

a2x -fpdf -dbook --fop essayv1.txt 

工作正常。 我想寫一個腳本來自動執行,所以我寫了這一點,並把它放到create.sh:

myfile="/media/essay/essayv1" 
rm -f ${myfile}.pdf 
a2x -fpdf -dbook --fop ${myfile}.txt 

然而,通過SH create.sh運行此只給了我

.txt ERROR: missing SOURCE_FILE: /media/essay/essayv1 

能有人告訴我如何解決這個簡單的腳本?

+1

你修改這個腳本以把Windows行結束符在它的編輯器?在你的'create.sh'上運行'dos2unix'或類似的東西。 – twalberg

+0

謝謝,這是解決方案。就這麼簡單,我已經浪費了幾個小時試圖修復它。 – helm

回答

0

嘗試:

#!/bin/sh 
myfile="/media/essay/essayv1" 
cd `dirname "${myfile}.txt"` 
rm -f ${myfile}.pdf 
a2x -fpdf -dbook --fop "${myfile}.txt" 
+0

得到了和以前一樣的錯誤,現在除了'create.sh:3:cd:can not cd to/media/essay'外,還可以在shell中輸入'cd/media/essay'作爲 – helm

+0

Directory'媒體/散文存在?文件'/ media/essay/essayv1.txt'存在嗎? – Georgio

+0

當然,我可以通過普通的shell命令訪問它們。 我可以補充說,這個Ubuntu在VirtualBox中運行,「essay」是一個與Windows主機共享的文件夾,但我認爲這對處理其中的文件沒有任何影響。 – helm