我可以给空字符串加上别名吗?

伊利亚斯·卡里姆(Ilias Karim)

在bash中,您可以将空命令作为别名吗?换句话说,是否认识到用户仅Enter在shell提示符下按下了键?例如,如果您想用空白的shell条目清除屏幕,如何将别名Enter作为clear命令?

史考特

这是(有效地)将空命令命名为某些东西的方法:

将以下内容放入您的.bashrc

command1()
{
    if [ "$BASH_COMMAND" != command2 ]
    then
        command_flag=1
    fi
    return 0
}
trap command1 debug
command2()
{
    if [ ! "$command_flag" ]
    then
        echo "clear"                            # Put whatever command(s) you want here.
    fi
    command_flag=
}
PROMPT_COMMAND=command2

如有必要,用您不太可能随机输入的单词替换command1command2一致。

  • trap command1 debug会导致command1您(用户)每次键入命令时都执行功能。
    • 如果不是要执行的最新命令command2command1将置位command_flag
  • 每当shell即将发出提示时,分配command2PROMPT_COMMAND就会导致command2执行。
    • 如果command_flag具有非空白值,则表示command1已执行,这意味着用户仅运行了命令。在这种情况下,什么也不做。
    • 如果command_flag确实具有非空值,这意味着用户只需点击Enter在这种情况下,请执行您想做的事情(例如,清除屏幕)。
    • 无论哪种情况,command_flag都将其设置为空白,因此所有内容都将在下一个周期工作。

注意:我很确定这是特定于bash的(即POSIX不支持)。

这个答案基本上是从我在bash中的命令后添加垂直空间的答案中复制的另请参见在PROMPT_COMMAND中告诉最后一个命令是否为空以了解其他方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

是否可以在vim中为regexp子字符串加上别名?

来自分类Dev

我可以将空的TextInput值作为空字符串发送到DataProvider而不是转换为null吗?

来自分类Dev

我可以为dot sourcing命令加上别名吗?

来自分类Dev

我可以为函数的返回类型加上别名吗

来自分类Dev

我可以为嵌套的RSpec匹配器加上别名吗?

来自分类Dev

如何为类型加上别名(例如,字符串,整数...)

来自分类Dev

空字符串是特例吗?

来自分类Dev

非空字符串的哈希码可以为零吗?

来自分类Dev

asp.net JavascriptSerializer可以将null编码为空字符串吗?

来自分类Dev

默认的SQLServer实例名称可以为空字符串吗?

来自分类Dev

上下文相关的语法可以有一个空字符串吗?

来自分类Dev

Python枚举属性可以有一个空字符串吗?

来自分类Dev

asp.net JavascriptSerializer可以将null编码为空字符串吗?

来自分类Dev

上下文相关的语法可以有一个空字符串吗?

来自分类Dev

我可以在Node中执行字符串命令吗?

来自分类Dev

我可以在Lucene查询字符串中计数(*)吗?

来自分类Dev

我可以将字符串转换为变量吗?

来自分类Dev

我可以在http查询字符串中使用“ ==”吗?

来自分类Dev

我可以在protobuf中定义常量字符串吗?

来自分类Dev

我可以从字符串中获取列名吗?

来自分类Dev

我可以使用通配符比较字符串吗?

来自分类Dev

我可以在python函数中搜索字符串吗?

来自分类Dev

Tclsh:我可以对字符串使用split吗?

来自分类Dev

我可以将字符串转换为变量吗?

来自分类Dev

我可以在字符串内使用向量吗?

来自分类Dev

我可以在格式字符串中添加变量吗?

来自分类Dev

我可以将重复的字符串存储在字符串数组中吗?

来自分类Dev

空字符串是合法的字段/方法名称吗?

来自分类Dev

空字符串是文件吗?(如果[!-f“”])

Related 相关文章

  1. 1

    是否可以在vim中为regexp子字符串加上别名?

  2. 2

    我可以将空的TextInput值作为空字符串发送到DataProvider而不是转换为null吗?

  3. 3

    我可以为dot sourcing命令加上别名吗?

  4. 4

    我可以为函数的返回类型加上别名吗

  5. 5

    我可以为嵌套的RSpec匹配器加上别名吗?

  6. 6

    如何为类型加上别名(例如,字符串,整数...)

  7. 7

    空字符串是特例吗?

  8. 8

    非空字符串的哈希码可以为零吗?

  9. 9

    asp.net JavascriptSerializer可以将null编码为空字符串吗?

  10. 10

    默认的SQLServer实例名称可以为空字符串吗?

  11. 11

    上下文相关的语法可以有一个空字符串吗?

  12. 12

    Python枚举属性可以有一个空字符串吗?

  13. 13

    asp.net JavascriptSerializer可以将null编码为空字符串吗?

  14. 14

    上下文相关的语法可以有一个空字符串吗?

  15. 15

    我可以在Node中执行字符串命令吗?

  16. 16

    我可以在Lucene查询字符串中计数(*)吗?

  17. 17

    我可以将字符串转换为变量吗?

  18. 18

    我可以在http查询字符串中使用“ ==”吗?

  19. 19

    我可以在protobuf中定义常量字符串吗?

  20. 20

    我可以从字符串中获取列名吗?

  21. 21

    我可以使用通配符比较字符串吗?

  22. 22

    我可以在python函数中搜索字符串吗?

  23. 23

    Tclsh:我可以对字符串使用split吗?

  24. 24

    我可以将字符串转换为变量吗?

  25. 25

    我可以在字符串内使用向量吗?

  26. 26

    我可以在格式字符串中添加变量吗?

  27. 27

    我可以将重复的字符串存储在字符串数组中吗?

  28. 28

    空字符串是合法的字段/方法名称吗?

  29. 29

    空字符串是文件吗?(如果[!-f“”])

热门标签

归档