【问题标题】:Why does .lesshst keep showing up in my ~为什么.lesshst 总是出现在我的~
【发布时间】:2014-10-05 01:59:27
【问题描述】:

我从不使用less,一直使用more。这就是我被介绍的内容,这可能就是为什么我更多地使用more 而不是更多地使用less。 (抱歉,这听起来有点乱:))

我刚刚尝试了less,甚至无法退出它,直到我意识到它需要一个 vi/vim 风格的命令。至少,我相信事情就是这样发生的。

在 ~ 中总是有一个.lesshst 文件,我一直在rm,因为我更喜欢使用more 或nano 来处理简单的东西,我可以使用 TextMate 进行简单的文本编辑,或者使用 Sublime 或其他任何我喜欢的东西。

我也刚刚注意到“.jbapps-myusername”现在也在 ~ 中。这出现在 2 天前,我不记得安装了任何奇怪的东西。知道它是什么吗?我从来没有越狱我的手机,也没有在我的机器上安装黑客。那些进入那个灰色区域的东西是在虚拟机中进行的,而不是在我作为主计算机工作的机器的核心上。

$file .jbapps-haneda 
.jbapps-haneda: ASCII text, with no line terminators

.jbapps-* 文件的内容是“483^@”,没有前导或尾随换行符、回车符等。

然后是我的 git 问题。我有一个.config 目录,里面是一个“git”目录,里面是一个名为“ignore”的文件,据我所知,它与.gitignore_global. git create .config 几乎相同,或者这是其他应用程序也使用的约定?

这将我带到我的最后一个问题,在 ~ 我有 .gitignore_global、.gitconfig 和 .config/git/ignore

对我来说似乎一团糟,我很想mv .gitignore_global .gitconfig .config/git 是否有可以定义这些位置的配置?这只是一堆点文件,如果 ~ 只是有.config 并且所有的点文件都在那里,那就更好了。我可以使用 .ssh,因为它是一个目录,所以至少要努力不乱扔我的主目录。但是原始点文件有点妨碍我。我知道我可以ls -l 而不显示点文件,但我认为始终查看您的所有文件是了解您可能不知道的已创建内容的好方法。

谢谢。

建议?

【问题讨论】:

    标签: dotfiles


    【解决方案1】:

    以 . 开头的文件名是(轻微)隐藏文件。程序经常使用它们来记录配置或使用信息。有时这是从您上次使用该程序时开始记录的; less and the .lesshist "history" file 就是这种情况。

    如果您不确定是哪个程序创建了该文件,网络搜索通常会回答这个问题...所以我将理解其余文件作为读者练习。

    【讨论】:

    • 我认为没有系统级配置显示“store dot files: ~/.config”或类似内容,以消除一些混乱,可能会覆盖“store specific files: ~”?春天快到了,我想打扫房子:)
    • 不幸的是,每个应用程序都决定在哪里保留自己的配置。对此有多种约定,但主目录是标准位置之一。
    • 我将如何寻找使用较少的应用程序,不是我。我很想对它进行 chmod 使其无法运行,但我感觉一些安装程序脚本可能依赖它,我觉得这很疯狂,他们应该使用 conned 而不是只能通过标志配置,而不是一些配置文件会如果不是和他们一样,那就失败了。
    • 一个使用less的命令是man。如果您使用more,您可能也使用过man,因此. lesshst 存在。
    • 链接失效An error has been encountered in accessing this page.
    【解决方案2】:

    如果使用man 命令查看文档,则会在用户的主目录中生成一个.lesshst 文件;通过使用 / 键在此类文档中执行搜索,输入搜索词,然后按 Enter 键开始搜索;然后使用 q 键退出man 命令文档。

    显然,下次使用man 命令查看文档时,可以使用此文件中的数据执行man 命令搜索,使用上次使用的搜索词。 (这可以通过在生成 .lesshst 文件后按搜索键组合 N 或 Shift+N 来完成。)目前尚不清楚我在最后一个之前存储搜索词有什么好处。

    【讨论】:

      【解决方案3】:

      您可以通过将LESSHISTFILE 变量设置为- 来禁用~/.lesshst 文件的创建。

      export LESSHISTFILE=-
      

      您还可以将上述设置为另一个有效的文件路径,以让less 命令使用该文件。我喜欢在我的~/.xprofile 文件中执行以下操作:

      export LESSHISTFILE="$XDG_STATE_HOME"/less/history
      

      至于你的git 东西,Git 可能不是创建~/.config 文件夹的程序。该文件夹是 XDG Base Dirs specification 的一部分,git 实际上是 respects 此规范。简而言之,您需要做的就是:

      • mv -T ~/.gitconfig $XDG_CONFIG_HOME/git/config
      • mv -T ~/.gitignore_global $XDG_CONFIG_HOME/git/ignore

      另请参阅Arch Wiki 了解 XDG 基本目录

      【讨论】:

      • 例如~/.bashrc,另见askubuntu.com/questions/386311/…
      • 请注意,根据规范,XDG_STATE_HOME 更适合历史文件:“$XDG_STATE_HOME ... 可能包含:操作历史记录(日志、历史记录、最近使用的文件……)”跨度>
      • @JakeRomer 这是我第一次听到XDG_STATE_HOME。是新的吗?
      • 我认为这是一个相对较新的添加——我找不到规范的变更日志,但我注意到 rust-xdg 库最近才添加了对它的支持,还没有发布。
      【解决方案4】:

      我今天早上刚刚调查过。由于我的强迫症,我想将 .lesshst 文件从我的$HOME 中移出并放入我的$XDG_LOG_HOME。

      花更少的钱:

      我在$XDG_CONFIG_HOME 中创建了一个名为“lesskey”的lesskey 文件,在这个lesskey 文件中,我将LESSHISTFILE 环境变量设置为我未来的less-history 文件的路径(在$XDG_LOG_HOME 中)。如果您已经有一个lesskey,只需添加它。 然后在我的 zshrc(或 bashrc)中设置以下行:

      alias less='less --lesskey-file=$XDG_CONFIG_HOME/lesskey'

      只有在使用 less 时才有效

      对于男人:

      我在我的 zshrc(或 bashrc)中加入了以下行:

      alias man='man --pager="less --lesskey-file=$XDG_CONFIG_HOME/lesskey"'

      这对男人有用! 我尝试使用更多,但它似乎没有在 $HOME 中生成 .lesshst

      【讨论】:

        【解决方案5】:

        您可能在不知不觉中使用了less。来自man 页面:

        COMPATIBILITY WITH MORE
           If the environment variable LESS_IS_MORE is set to 1, or if the program is invoked via a file link
           named "more", less behaves (mostly) in conformance with the POSIX  "more"  command  specification.
           In this mode, less behaves differently in these ways:
        
           The  -e  option  works differently.  If the -e option is not set, less behaves as if the -E option
           were set.  If the -e option is set, less behaves as if the -e and -F options were set.
        
           The -m option works differently.  If the -m option is not set, the medium prompt is used,  and  it
           is prefixed with the string "--More--".  If the -m option is set, the short prompt is used.
        
           The  -n  option  acts  like the -z option.  The normal behavior of the -n option is unavailable in
           this mode.
        
           The parameter to the -p option is taken to be a less command rather than a search pattern.
        
           The LESS environment variable is ignored, and the MORE environment variable is used in its place.
        

        【讨论】:

          猜你喜欢
          • 2011-11-22
          • 1970-01-01
          • 2020-02-25
          • 1970-01-01
          • 1970-01-01
          • 2020-10-16
          • 1970-01-01
          • 2022-06-11
          • 2013-03-24
          相关资源
          最近更新 更多