如何在终端中始终显示日期和时间

他们说一张图像值一千个单词,这就是为什么在我向您解释某些内容之前,我将向您展示该命令的结果的原因,稍后我将执行此命令:

terminal_date_time

请注意,如何在右上角看到星期几(星期日,星期日),月份(十二月),日期(22)以及小时,分钟,秒和年。

它是实时更新的信息,也就是说,信息每秒更新一次,并且总是在终端的右上角。

这很有用,因为我们可以使用nano或vi编辑文件,可以安装任何类型的服务或管理其内容,而无需停止操作,在终端中执行日期即可知道日期或时间,通过向我展示的技巧,我们将始终牢记这一点。

要在终端中实现此目的,我们需要输入以下内容:

while sleep 1;do tput sc;tput cup 0 $(($(tput cols)-29));date;tput rc;done &

因此,这不是简单的命令或指令,而是它们的结合……来吧,脚本也可以。 解释它有点复杂,但是我会尽力而为。

  • 在睡眠中1;做 :这意味着将每秒执行以下操作
  • 输出 :表示将保存当前位置,即保存下一个位置。以后无需指定。
  • 茶杯0$(($(tput cols)-29)) :这看似复杂,但并不难。 基本上,这就是该位置所显示的内容,即右上角。 cup参数指定了将存在的垂直空间,因为我们将0设为“ 29”,所以它的意思是“正上方,正上方”。 一旦定义了垂直位置,我们就可以看到水平位置,其余的参数将负责该水平位置,简单地说就是...计算现有的列并确保它在右边。 如果愿意,将其他号码更改为XNUMX,您会注意到其中的区别。
  • 日期 :嗯,这很简单,日期向我们展示了我们看到的信息……日,月,时等。
  • 输出rc :他们是tput sc,我们保存位置,现在使用tput rc恢复位置。
  • 完成 :在这里,我们完成了所有的工作,这是我们从头开始的。

如您所见,如果命令不能完全满足我们的要求,那么终端无疑是一个绝妙的空间……我们可以加入其中的几个并实现我们想要的。 将每个命令视为工具,工具(锤子)不能使我们成为漂亮的雕像,但是,通过将此工具(锤子)与其他命令(木材和凿子)结合使用,我们可以达到理想的效果🙂

哦,顺便说一句...如果您希望始终在终端中显示此内容而不必在每次打开控制台时都执行它,则必须将其放在.bashrc中,即:

echo "while sleep 1;do tput sc;tput cup 0 \$((\$(tput cols)-29));date;tput rc;done &" >> $HOME/.bashrc

然后 如果要删除它,运行以下命令:

sed -i "s/while sleep 1/#while sleep 1/" $HOME/.bashrc

没什么可补充的了,我希望它有用

问候

强烈

回显“在睡眠1时;执行tput sc; tput杯0 \ $((\ $(tput cols)-29));日期; tput rc;完成&” >> $ HOME / .bashrc


21条评论,留下您的评论

发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责数据:MiguelÁngelGatón
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。

  1.   盖尔曼

    谢谢,但是这对我不起作用。无论是在Konsole中还是在Yakuake中,我都无法完成帖子中的所有操作。 🙁

    1.    盖尔曼

      抱歉...这是我的错...现在我重新启动了它!

      1.    KZKG ^ Gaara

        令我感到奇怪的是,它没有用,因为日期和输出是Bash包中的命令😀

  2.   盖尔曼

    我不知道...发生了什么奇怪的事情...放在终端中:

    echo“在睡眠1时;做tput sc; tput杯子0 $(($(tput cols)-29));日期; tput rc;完成&” >> $ HOME / .bashrc

    结果是:

    bash:/home/ghermain/.bashrc:第115行:语法错误在意外的`do'元素附近
    bash:/home/ghermain/.bashrc:第115行:`PS1 ='$ {debian_chroot:+($ debian_chroot)} [33 [01; 34m] u [33 [01; 32m] @ [33 [01; 32m]] h [33 [00m]:[33 [01; 34m] w [33 [00m] $”,“在睡眠1时; tput sc; tput cup 0 64;日期; tput rc;完成&'

    然后,我直接复制了最后在.bashrc中输入的命令,并获得了几行日期和时间。

    1.    O_Pixote_O

      删除日期中已放入.bashrc文件中的所有行,然后手动重新放置该行,而无需使用回声(如果它没有给出错误)

  3.   贡萨洛

    很有意思!

    1.    KZKG ^ Gaara

      感谢您阅读🙂

  4.   乔塔·埃姆

    我一直在寻找方法来“装饰”高效而又酷的终端,这一命令非常好,不像其他解决方案那样笨拙,但是当我输入一个长命令时,会有些混乱。 该命令会吃掉日期,然后该日期似乎会吃掉该命令。 有人知道默认情况下,提示是否以任何方式低一行?
    无论如何,谢谢!

  5.   格雷戈里奥·埃斯帕达斯(Gregorio Espadas)

    优秀的小费🙂

    1.    KZKG ^ Gaara

      谢谢兄弟😀

  6.   奥斯卡

    感谢小费朋友,它可以正常工作。 问候。

    1.    KZKG ^ Gaara

      感谢您阅读我们🙂

  7.   特鲁科22

    很棒😀
    或者您可以创建别名并在需要时使用它it

  8.   詹姆斯·切

    有趣,我稍后再试

  9.   约翰

    非常好

  10.   杰明·塞缪尔

    您能发表一篇帖子解释如何在Debian / Ubuntu / Mint / Elementary中安装zsh以及如何配置主题吗?

    1.    KZKG ^ Gaara

      乌夫,我从未使用过zsh,对不起🙁

  11.   O_Pixote_O

    当您执行命令时,KZKG ^ Gaara会给出错误,因为我想它会尝试识别没有值的$,因此它不会解释它们,并修复\它们。

    echo "while sleep 1;do tput sc;tput cup 0 \$((\$(tput cols)-29));date;tput rc;done &" >> $HOME/.bashrc

    我想那样就不会有问题,请在纠正错误之前纠正它。 好帖子,我会用它。 问候。

    1.    KZKG ^ Gaara

      没错,我的错😀
      我已经在帖子中修复了它,非常感谢您的更正🙂

  12.   jvk85321

    我修改了它,就这样留了下来

    睡眠1;做tput sc;做tput杯子0 $(($(tput cols)-16));日期+»%R%d /%m /%Y»; tput rc;完成&

    它仅以DD / MM / YYYY格式显示小时:分钟日期

  13.   danyel

    我工作过的好朋友100谢谢