~/.bash_aliases のこの関数がエラーを引き起こしている理由を突き止めようとして、髪を引き裂いています。
function kill-xbmc () { xbmcpid=`ps aux | grep "[x]bmc" | awk "{printf "%s ",$2}"`; kill -9 ${xbmcpid} }
同じファイルの終わりエラーが発生し続けます。{} や "" マークのペア、または過度に明白なものが欠けていることがわかりません。
これを試して:
function kill-xbmc () { xbmcpid=`ps aux | grep "[x]bmc" | awk '{printf "%s ",$2}'`; kill -9 ${xbmcpid}; }
関数の最後のステートメントは で終了していない;
ため、最後のステートメントの一部として終了}
が取られました。スクリプトの残りの行は関数の一部であると見なされるため、一致する右中括弧が見つからない場合、「予期しないファイルの終わり」エラーが発生します。
また、あなたのawk
主張の引用符を変更しました。ネストされた引用符に同じ引用符文字を使用していたため、文字列が途中で終了していました。
awk "{printf "%s ",$2}"
--------- | ------
| | |
s1 | s2
|
%s outside string
$2
シェルによって展開されないようにするために、外側の引用符に単一引用符を使用したことに注意してください。