`sudo less...`は`~/.lesshst`の所有権を変更する必要がありますか?

`sudo less...`は`~/.lesshst`の所有権を変更する必要がありますか?

実行済み

sudo less ...

...制限されたログファイルを調査し、いくつかの検索を実行した結果、ファイルの所有~/.lesshst権とグループが次に変更されたことがわかりましたroot:root。これは~、コマンドを呼び出すユーザーのホームディレクトリでsudoはなく、コマンドを呼び出すユーザーのホームディレクトリを表します。rootもちろんコマンドです)。

Ubuntu 18.04を新しくインストールするときにこれが発生しましたless --version

less 487 (GNU regular expressions)
Copyright (C) 1984-2016  Mark Nudelman

この行動をどこでも説明することは言うまでもなく、観察する人への言及を見つけることができません。だからここでその理由を探しています。またはこれがエラーのシグナルだけであることを確認してください。

ベストアンサー1

これは正常です。

sudo less ...

lessホームディレクトリを変更せずにrootとして実行します。検索を実行すると、検索履歴が更新され、~/.lesshstファイルの所有権が現在のユーザールートに変更されます。更新が安全に完了できるように、履歴がless新しい一時ファイルに書き込まれ、名前が変更されます。所有権の元のファイルは失われます)。

これを回避するには、less設定変数がルートのホームディレクトリを指すように指定して、ルートの履歴を使用できます。sudoHOME

sudo -H less ...

別のオプションは、検索履歴を一時的に無効にすることです。

sudo LESSHISTFILE=- less ...

ただし、これは保存された検索履歴(検索文字列を指定しなくても後ろ)を/使用できないことを意味します。n

おすすめ記事