12

新しいjekyll投稿を作成するために、bashスクリプトにこの機能があります。しかし、コマンドが見つからないという引数を返します。スクリプトは次のとおりです。

 function new_post () {
     if [ -z "$1" ]
     then
         read -p "Post Title:"  TITLE
     else
         TITLE= "$1"
     fi
     FILE=$( echo $TITLE | tr A-Z a-z | tr ' ' _ )
     echo -e '---\nlayout: post\ntitle: '$TITLE'\npublished: false\n---\n' > $(date '+%Y-%m-%d-')"$FILE"'.md'
 }

しかし、実行しようとすると、次のように返されます。

$>new_post "Hello World"
-bash: Hello World: command not found

引数をコマンドとして実行しようとしているようです。

私もこれを試してみましたが、同じ結果が得られました

$>TITLE= "Hello World" && echo -e ---layout: post\ntitle: "$TITLE"\n--- 
-bash: Hello World: command not found

誰が私が間違っているのか教えてもらえますか?

4

2 に答える 2

22

TITLE= "$1"エラーの原因はスペースである可能性があります。試してみてくださいTITLE="$1"

于 2012-09-02T17:28:30.057 に答える