私は、実行するたびにトラックパッドの動作を切り替えるbashスクリプトを作成しようとしています。それは以下の通りです。bashスクリプトで変数から読み込むときに引数が多すぎます
#!/bin/bash
zero=0;
if [ ! -f "/tmp/touchpadON.dat" ]; then
T=0
xinput disable 12
echo no file found
else
T='cat /tmp/touchpadON.dat'
if [ $T -eq $zero ] # ERROR here, too many arguments.
then
T=1
xinput disable 12
echo diabling trackpad
else
T=0
xinput enable 12
echo enabling trackpad
fi
fi
echo $T
echo "${T}" > /tmp/touchpadON.dat
このスクリプトを実行しようとすると、11行目でエラーが多すぎるというエラーが表示されます。これをどうやって解決するのですか?
/tmp/touchpadON.datには何がありますか?あなたはそこから1つ以上の言葉を得ているに違いない。それが問題の原因となっている。 – codeforester
T = $(cat file.dat)を試してください – fedepad
ここにはたくさんのバグがあります。 http://shellcheck.net/はあなたのためにそれらの多くを識別します - StackOverflowでここに質問をする前に見つけたすべてのものを修正する習慣を作ってください。 –