当前位置: 首页 > news >正文

Bash 之外更友好的 Linux shell:Fish,功能丰富且易上手!

ZDNET 核心要点Linux 命令行 shell 能实现与内核的通信大多数发行版的默认 shell 是 Bash但还有更用户友好的选项 Fish。本质上Linux shell 负责解释命令以便内核能够理解和执行没有 shell命令无法运行应用程序也无法正常工作所以 shell 非常重要。大多数 Linux 发行版默认使用 Bash shell即 Bourne Again Shell。之所以叫 “Bourne”是因为 Bourne shell 是第一个 shell而 Bash 是它的改进版。使用 Bash 可以编写几乎能完成任何任务的 bash 脚本然而Bash 已经存在很长时间且变化不大。好消息是有其他替代方案其中一个替代方案增加了 Bash 所欠缺的功能这个 shell 就是 FishFriendly Interactive SHell。Bash 和 Fish 的主要区别在于Bash 感觉是在为你工作而 Fish 感觉是在与你协作。Bash 和 Fish 的区别在 Bash 中运行命令时输入命令按下回车键然后等待查看命令是否执行成功。Bash 不会提供帮助只是接受命令并尝试运行。Fish 的表现则不同。当在 Fish 中开始输入命令时它会根据历史记录提供建议看到合适的建议时按下右箭头键即可接受。例如输入 sshFish 可能会给出像 ssh 192.168.1.26 这样的建议按下箭头键然后按回车键即可。Fish 使用了颜色。例如输入无效命令Fish 会将其显示为红色将无效命令修改为有效命令它会变成蓝色开始输入文件路径路径会显示为红色一旦路径有效就会变成蓝色。当开始输入命令时按 Tab 键会显示多个建议可以使用箭头键在列表中滚动并选择要运行的命令。还可以在 Fish 中使用 set 命令设置变量。例如想将名为 name 的变量设置为自己的名字可以输入set name jack。现在可以这样使用这个变量echo My name is $name输出结果将是My name is jack。Fish 在其他方面也很用户友好。例如在 Bash 中使用反引号 () 来表示命令这常常会让人感到困惑。而在 Fish 中命令放在括号里例如echo (whoami) in (pwd)上述命令的结果将是jack in /home/jack。还可以为命令设置缩写类似于 Bash 中的别名。假设经常使用 git checkout 命令想让它更高效。如果想为该命令创建缩写 gco可以这样操作abbr --add gco git checkout。或者可以设置几个 ssh 缩写如下所示 abbr --add ssh11 ssh 192.168.1.11abbr --add ssh12 ssh 192.168.1.12。现在当输入 ssh11 时就会连接到 192.168.1.11输入 ssh12 时就会连接到 192.168.1.12。这些缩写即使在注销后仍然有效。Fish 还包含一个实用的计算器。例如可以输入math 5020/220答案22.818182会在命令提示符处显示。安装和设置 Fish shellFish 可以从发行版的标准软件源中安装。例如在 Ubuntu 中安装 Fish 的命令是sudo apt-get install fish -y在 Fedora 中命令是sudo dnf install fish -y在 Arch 中命令是sudo pacman -S fish。安装 Fish 后必须使用以下命令将其设置为默认 shellchsh -s $(which fish)。如果最后不喜欢 Fish其实你会喜欢的可以使用以下命令将其改回 Bashchsh -s $(which bash)。这就是 Fish shell。记住授人以 Fish渔受益终生。相关资讯丹麦为何弃用 Microsoft Office 和 Windows转而使用 LibreOffice 和 Linux苹果悄然让在 Mac 上运行 Linux 容器变得更简单无法升级到 Windows 11这个 Linux 发行版是你 Windows 10 PC 的最佳替代方案5 款类似 MacOS 的 Linux 发行版能在支持结束前拯救你的旧 Intel Mac 。
http://www.zskr.cn/news/1405391.html

相关文章:

  • ChatGPT技术文档写作最后窗口期:Gartner预警2025年起,未通过AI文档可信度认证的交付将拒收(附自测工具包)
  • 3篇2章3节:AI 影片的类型解析
  • 在Jupyter中轻松运行Java代码:IJava内核的完整指南
  • 政策落地到产业见效:山东以数据治理与智能体实验室,打通链路
  • Ryujinx模拟器入门指南:如何在PC上免费畅玩Switch游戏
  • 终极指南:使用USBToolBox轻松解决macOS USB端口限制问题
  • StPageFlip技术深度解析:构建高性能Web翻页动画的架构与实践
  • LEEF:轻量级NVM仿真框架,加速软硬件协同设计探索
  • Unity glTF导入终极指南:GLTFUtility完整配置与高效使用教程
  • 离线个人认证设备协议漏洞分析与增强方案:从中间人攻击到形式化验证
  • 揭秘AI专著生成:4款高效工具推荐,助你3天完成20万字专著撰写
  • STL关联式容器深度解析:从set/map到multiset/multimap的核心机制与实战应用
  • 超实用!低查重AI教材编写工具,一键搞定教材创作难题!
  • 后端程序员转大模型?收藏这份简历攻略,让你的技能成为优势!
  • UE4联机避坑实录:从‘我的子弹穿墙了’到‘流畅同步’的DS实战调优
  • 19-系统日志与操作审计:平台如何记录“谁做了什么”
  • 从零构建:Qt5.12.11在ARMv8 Cortex-A53平台上的交叉编译实战
  • 2026 高性价比国产 DFM 软件推荐:自主可控的 EDA 工具选型参考 - 品牌2025
  • 如何快速获取网络素材?这个跨平台工具帮你一键搞定!
  • 6G HMIMO电源网络设计:从分布式架构到电源完整性挑战
  • 如何用Zotero Style插件彻底改变你的文献管理体验:从阅读到整理的终极指南 [特殊字符]
  • 从零到一:SUSE15企业级服务器部署实战手册
  • 东莞零基础学车怎么选?就近练车避坑攻略(2026靠谱推荐) - 资讯速览
  • ChatGPT职业咨询到底值不值得做?资深职业顾问坦白局:92%的咨询失败源于这3个认知盲区
  • TLS 1.3 Certificate Verify签名值验证过程解析
  • 人工智能变革法律行业困难重重:数据、组织、计费、风险、可及性问题待解
  • 射线能谱仪核脉冲信号数字成形算法实现【附代码】
  • STM32HAL库-F1-基于RDP与WRP的FLASH双重保护机制实战(详解)
  • 从接入到使用Taotoken API过程中的延迟与稳定性体验分享
  • 鸣潮自动化工具ok-ww终极指南:解放双手,轻松享受游戏乐趣