You Might Like

fish 是一个 [[LINK|lang_zh|Unix_shell|Unix shell]] 。 fish这个名字是 friendly interactive shell 的缩写。 fish专注于交互应用、易用性和友好的用户体验。fish的设计目的是通过容易发现,记住和使用的方式为用户提供一套丰富、强大的功能 。fish于2005年在 [[LINK|lang_zh|GNU通用公共许可证|GNU通用公共许可证]] 条款下正式发布。fish 是一款 [[LINK|lang_zh|自由软件|自由软件]] 。

概要


fish提供了一个用户友好而又强大的 命令行补全, 包含有每一个补全项的描述,包含 [[LINK|lang_zh|通配符|通配符]] 的 [[LINK|lang_zh|字符串|字符串]] 的tab补全,和许多具体命令的补全。它还提供一个广泛的可用的帮助系统。通过一个专门的帮助命令使用用户的 [[LINK|lang_zh|网页浏览器|网页浏览器]] 来访问所有的fish文档。

语法


Fish的语法和别的 [[LINK|lang_zh|Shell_脚本|Shell 脚本]] 略有不同。这些改变是为了让这个语言更加的强大并且更小巧和易学。fish和其他命令行交互语言如 [[LINK|lang_zh|Bash|bash]] 的一个明显的不同在于:一个变量的内容不需要使用令牌分离,这意味着很少需要使用引号将变量引用括起来。

fish与其他的 [[LINK|lang_zh|Shell|shell]] 之间一个很重要的不同点在于缺乏子的shell。像 [[LINK|lang_zh|管道流|管道流]] 、 [[LINK|lang_zh|子程序|子程序]] 和 [[LINK|lang_zh|程式迴圈|循环]] 等任务需要通过调用其它语言实现的子shell来完成,子shell是一些为shell脚本运行少量命令然后退出的简单的子程序。不幸的是,在子shell中所做的修改不会对主shell产生任何的影响,这意味着像是变量赋值和很多内部函数的使用并不能像与其一样的工作。Fish从来不去关注这些所谓的子shell;所有的内部函数都充分的发挥作用。

有用的错误信息


fish中的错误信息被设计来真实地告诉用户什么地方出错了和如何去修正它。

通用变量


Fish有一个称为通用变量的特性,它允许一个用户永久指定一个值给一个所有用户运行的fish shells中都使用到的变量。这个变量值会被记住,即使是注销或者重新启动,而且会立即更新并传播到所有正在运行的shells。

其它特性


  • 优秀的tab补全功能
  • 具有广泛错误检查的 [[LINK|lang_zh|語法高亮度顯示|語法高亮度顯示]]
  • 支持 [[LINK|lang_zh|X_Window系統|X Window系統]] 和 [[LINK|lang_zh|http:|剪贴板]]
  • 基于 [[LINK|lang_zh|http:|terminfo]] 的智能的 [[LINK|lang_zh|終端|终端]] 处理
  • 可以查询的 [[LINK|lang_zh|http:|命令历史]]

參考


You Might Like