スクリプトで失われたLINESとCOLUMNSの環境変数
2023-08-08 05:47:56
質問
次のように考えてください。
me@mine:~$ cat a.sh
#!/bin/bash
echo "Lines: " $LINES
echo "Columns: " $COLUMNS
me@mine:~$ ./a.sh
Lines:
Columns:
me@mine:~$ echo "Lines: " $LINES
Lines: 52
me@mine:~$ echo "Columns: " $COLUMNS
Columns: 157
me@mine:~$
変数
$LINES
と
$COLUMNS
はシェル変数です。
ではなく
環境変数であるため、子プロセスにエクスポートされません (しかし、リモートから ssh でログインした場合でも、 xterm ウィンドウのサイズを変更すると自動的に更新されます)。私のスクリプトに現在のターミナル サイズを知らせることができる方法はありますか?
EDIT。
私は、回避策としてこれを必要とします。
この問題
: vi (vim、less、および類似のコマンドと同様) を使用するたびに画面がめちゃくちゃになります。ターミナルを変更することはオプションではないので、回避策を探しています (下にスクロールする
$LINES
の行を下にスクロールすることは確かに完璧な解決策ではありませんが、少なくとも前の画面を失うよりはましです)。
どのように解決するのですか?
行と列を取得するには
tput
:
#!/bin/bash
lines=$(tput lines)
columns=$(tput cols)
echo "Lines: " $lines
echo "Columns: " $columns
関連
-
[解決済み] シェルスクリプトでブール変数を宣言して使用するにはどうすればよいですか?
-
[解決済み] Unixのシェルスクリプトで環境変数が設定されていることを確認する簡潔な方法は何ですか?
-
[解決済み】あるシェルスクリプトから別のシェルスクリプトにすべての変数を渡す?
-
[解決済み] [Solved] awk スクリプトでシェル変数を使うには?
-
[解決済み] bashでalt + numericを押すと(arg [numeric])と出ますが、これは何でしょう?
-
[解決済み] Bashの履歴にコマンドを表示させないようにするには?
-
[解決済み] bash スクリプトで ENTER キー押下をシミュレートする
-
[解決済み] Bashでファイルの内容を既存ファイルの末尾に追加する [重複]。
-
[解決済み] Bashでテーブルの列を揃えるにはどうしたらいいですか?
-
[解決済み] Bashで文字列の一文字目を削除する
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Git のコマンドライン・インターフェイスの言語を変更するにはどうしたらよいですか?
-
[解決済み] Bashで引用符で囲まれた文字列の中で環境変数を使用する方法
-
[解決済み] bashでWebサーバーの応答を待つループを作成するには?
-
[解決済み] スクリプトの実行に関連したファイルの参照
-
[解決済み] ファイルを分割する方法。重複
-
[解決済み] bashでHMAC-SHA1
-
[解決済み] Bashでファイルの内容を既存ファイルの末尾に追加する [重複]。
-
[解決済み] 最終編集日順のファイル一覧
-
[解決済み] Bashのコマンドラインと入力制限
-
[解決済み] Bash。フォルダ構造を保持したまま再帰的に名前付きファイルをコピーする