シェルスクリプトで「整数式が期待される」場合の解決方法
2022-02-07 08:17:08
シェルスクリプトで、" [ $temp -gt "0" ]"などのパラメータで比較する場合、問題の " が発生する場合があります。 整数式が期待される "エラーが発生します。これは、これらのパラメータ:-gt, -lt, -eqが数値を比較するためで、変数tempが文字列の場合、上記のエラーが発生します。元の文章を " [ $temp -gt 0 ]" に変更しても同じ結果になります。
この問題を解決するもっと回りくどい方法は、awk ツールを使って変数を比較し、その結果を返し、さらにその比較結果を対応する数値量と比較することです。具体的には上の例の場合、次のように処理できます。
<スパン
[ `echo ${TEMP} | awk -v tem=0 '{print($1>tem)? "1":"0"}'` -eq "0" ]。
以下のように使用します。
<スパン
TEMP=`adb shell "cat /sys/class/backlight/intel_backlight/brightness"`
if [ `echo ${TEMP} | awk -v tem=0 '{print($1>tem)? "1":"0"}'` -eq "0" ]; then
adb shell input keyevent 26
fi
関連
-
[解決済み】Nginx: stat() に失敗しました (13: 権限が拒否されました)
-
[解決済み] PIP 要件を満たすダウンロードが見つかりませんでした SQLAlchemy
-
[解決済み] dockerでのインストール時に、ダイアログの質問に答えることは可能でしょうか?
-
[解決済み] 新しいJupyter Notebookを開けない[Permission Denied]。
-
[解決済み] blk_update_request: I/O エラー、デバイス sda、セクタ xxxxxxxx
-
[解決済み] Vimです。ファイルを変更しても最後の変更から書き込みがない[重複]。
-
[解決済み] "GitLabは応答しません" Ubuntu 14.04でサーバー起動後に502が発生
-
OperationalError: fe_sendauth: no password supplied の解決策です。
-
error: 'strcmp' is not declared in this scope
-
linux mount error トランスポートエンドポイントが接続されていません。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Ubuntu16 Nvidiaドライバ(GTX1060グラフィックカード)をインストールします。
-
[解決済み] Windows 10 Spring Creators Update上のUbuntuでランレベルエラーを回避する方法とは?
-
[解決済み] Docker エラー bind: アドレスはすでに使用されています。
-
[解決済み] scpでブロークンパイプエラー
-
[解決済み] 不明なエンコーダ 'libx264' があります。
-
[解決済み] UbuntuのDockerイメージ内でwgetを実行する方法は?
-
CurlはサーバーからEmpty replyを返すため、特殊文字の扱いができず、Curlにアクセスできない結果、ブラウザがアクセスできるようになります。
-
[NVML の初期化に失敗しました。ドライバ/ライブラリのバージョンの不一致(解決済み)
-
ubuntu, マックビューポートポート
-
std::runtime_error' のインスタンスを投げた後に呼び出される終了の解決法