デバイスファイル(root権限が必要)に書き込むことでデバイスを有効/無効にする必要があるユーザーレベルのアプリケーションがあります。
これが私のインターフェースの現在の実装です:
bool DeviceInterface::EnableDevice( bool isEnabled )
{
bool isSuccessful = false;
//enable device
if(isEnabled)
{
isSuccessful = (system("enableDevice.sh 1") == 0)? true : false;
}
//disable device
else
{
isSuccessful = (system("enableDevice.sh 0") == 0)? true : false;
}
return isSuccessful ;
}
私のスクリプト「enableDevice.sh」は単純に次のようになり、rootとして実行すると問題なく実行されます。
echo $1 > /sys/devices/device_file
デバイスファイルに書き込めるにはroot権限が必要なため、これは失敗します。私は「パイプ」、「フォーク」、「エグゼクティブ」にまったく慣れていません。スクリプトに「0」または「1」を渡してデバイスを有効または無効にする方法を教えてもらえますか?