Linux fishshell命令怎么安装和使用

Linux fishshell命令怎么安装和使用

这篇文章主要介绍了Linux fishshell命令怎么安装和使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Linux fishshell命令怎么安装和使用文章都会有所收获,下面我们一起来看看吧。

fishshell

比 bash 更好用的 shell

安装

#Ubuntu和Debian的安装方法。sudoapt-getinstallfish#Mac的安装方法。brewinstallfish

启动与帮助

由于 Fish 的语法与 Bash 有很大差异,Bash 脚本一般不兼容。因此,建议不要将 Fish 设为默认 Shell,而是每次手动启动它。

#安装完成后,就可以启动Fish。$fish#使用过程中,如果需要帮助,可以输入help命令$help

彩色显示

#无效命令为红色$mkd#有效命令为蓝色$mkdir#有效路径会有下划线。如果没有下划线,你就知道这个路径不存在。$cat~/somefi

自动建议

Fish 会自动在光标后面给出建议,表示可能的选项,颜色为灰色。如果采纳建议,可以按下 → 或 Control + F 。如果只采纳一部分,可以按下 Alt + →。

$/bin/hostname#命令建议$grep--ignore-case#参数建议$lsnode_modules#路径建议

自动补全

输入命令时,Fish 会自动显示匹配的上一条历史记录。如果没有匹配的历史记录,Fish 会猜测可能的结果,自动补全各种输入。比如,输入 pyt 再按下 Tab ,就会自动补全为 python 命令。

Fish 还可以自动补全 Git 分支。

脚本语法

if 语句

ifgrepfish/etc/shellsechoFoundfishelseifgrepbash/etc/shellsechoFoundbashelseechoGotnothingend

switch 语句

switch(uname)caseLinuxechoHiTux!caseDarwinechoHiHexley!caseFreeBSDNetBSDDragonFlyechoHiBeastie!case'*'echoHi,stranger!end

while 循环

whiletrueecho"Loopforever"end

for 循环

forfilein*.txtcp$file$file.bakend

函数

Fish 的函数用来封装命令,或者为现有的命令起别名。

functionllls-lhG$argvend

上面代码定义了一个 ll 函数。命令行执行这个函数以后,就可以用 ll 命令替代 ls -lhG。其中,变量 $argv 表示函数的参数。

functionlscommandls-hG$argvend

上面的代码重新定义 ls 命令。注意,函数体内的 ls 之前,要加上 command,否则会因为无限循环而报错。

提示符

fish_prompt 函数用于定义命令行提示符(prompt)。

functionfish_promptset_colorpurpledate"+%m/%d/%y"set_colorFF0echo(pwd)'>'set_colornormalend

执行上面的函数以后,你的命令行提示符就会变成下面这样。

02/06/13/home/tutorial>

配置

Fish 的配置文件是 ~/.config/fish/config.fish,每次 Fish 启动,就会自动加载这个文件。Fish 还提供 Web 界面配置该文件。

$fish_config#浏览器打开Web界面配置

Running Commands: 兼容 bash 等shell的命令执行方式

Getting Help: help/man cmd -> browser/terminal

Syntax Highlighting: 实时检查命令是否正确

Wildcards: 支持缩写 * 递归 匹配

Pipes and Redirections: 使用 ^ 代表 stderr

Autosuggestions: 自动建议, 可以使用 Ctrl-f / -> 来补全

Tab Completions: 更强大的 tab 补全

Variables: 使用 set 设置

Exit Status: 使用 echo $status 替代 $? Exports (Shell Variables)

Lists: all variables in fish are really lists

Command Substitutions: 使用 (cmd) 来执行命令, 而不是 反引号、$()

Combiners (And, Or, Not): 不支持使用符合来表示逻辑运算

Functions:使用 $argv 替代 $1

Conditionals (If, Else, Switch) / Functions / Loops: 更人性化的写法

Prompt: function fish_prompt 实现

Startup (Where’s .bashrc?): ~/.config/fish/config.fish,更好的方式是 autoloading-function、universal-variables Autoloading Functions: ~/.config/fish/functions/.

Universal Variables:a variable whose value is shared across all instances of fish

setname'czl'#设置变量,替代name=czlecho$nameecho$status#exitstatus,替代$?env#环境变量set-xMyVariableSomeValue#替代exportset-eMyVariablesetPATH$PATH/usr/local/bin#使用lists记录PATHset-Ufish_user_paths/usr/local/bin$fish_user_paths#永久生效touch"testing_"(date+%s)".txt"#commandsubtitution,替代`date+%s`cpfile.txtfile.txt.bak;andecho'backsuccess';orecho'backfail'#combinerfunctions#列出fish下定义的函数

关于“Linux fishshell命令怎么安装和使用”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“Linux fishshell命令怎么安装和使用”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注恰卡编程网行业资讯频道。

发布于 2022-02-07 23:11:52
收藏
分享
海报
0 条评论
66
上一篇:Linux ftp命令怎么使用 下一篇:Linux firewall-cmd命令怎么使用
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码