Questions tagged «fish»

Fish是具有简洁设计和有限但功能强大的功能集的unix外壳。

10
每行管道输入执行一次命令?
我想为的每次匹配都运行一次Java命令ls | grep pattern -。在这种情况下,我想我可以做,find pattern -exec java MyProg '{}' \;但是我对一般情况感到很好奇-是否有一种简单的方式说“每行标准输入运行一次命令”?(以鱼或b)。
161 bash  shell  fish 


2
Bash是否具有类似Fish的自动建议和突出显示等功能?
我最近注意到Fish中有2个功能,并且想知道是否有人知道Bash中是否也有这些功能? 语法高亮 细节: 您很快就会注意到,fish在您键入时会执行语法突出显示。默认情况下,无效命令显示为红色: 命令可能因为它不存在而无效,或者引用了您无法执行的文件。该命令生效后,将以其他颜色显示 键入时,fish将在有效文件路径下划线 这告诉您存在一个以'somefi'开头的文件,这在您键入时很有用。 自我建议 细节: fish在键入时会建议命令,并在光标右侧以灰色显示该建议。 它知道路径和选项 要接受自动建议,请按向右箭头或Control-F。如果自动建议不是您想要的,请忽略它。
37 bash  shell  fish 

10
处理带有特殊首字符的文件名(例如♫)
我最近遇到了一个名称以字符“ the”开头的文件。我想复制此文件,将其输入ffmpeg,并在终端中以其他各种方式引用它。我通常会自动完成怪异的文件名,但这会失败,因为我什至无法输入第一个字母。 我不想切换到鼠标来执行复制粘贴操作。我不想为可能的情况记住一堆代码。我的临时解决方案是切换到vim,粘贴!ls并复制有问题的字符,然后退出并将其粘贴到终端中。这行得通,但是非常可怕。 有没有更简单的方法来处理这种情况? 注意:如果使用鱼壳,它会改变一切。


1
仅在上一条命令在Fish中成功执行时才运行命令(例如bash中的&&)
使用Bash时,我经常做一些事情,例如,cd /study && ls -la 我理解双&号告诉终端不要执行该命令的第二部分,除非第一部分没有错误地完成。 我的问题是,刚移到Fish外壳并尝试了相同的命令,我收到一条错误消息,指出我无法使用,&&并指示我使用一个&我认为不是我想要的任务的后台任务。 谁能告诉我在Fish Shell中运行我的旧Bash命令的正确语法?
16 fish 

2
为什么我不能列出具有读取权限的目录?
我创建了一个目录d和一个文件f。然后,我只授予自己对该目录的读取权限。我理解这应该意味着我可以列出文件(例如here),但是我不能。 will@wrmpb /p/t/permissions> ls -al total 0 drwxr-xr-x 3 will wheel 102 4 Oct 08:30 . drwxrwxrwt 16 root wheel 544 4 Oct 08:30 .. dr-------- 3 will wheel 102 4 Oct 08:42 d will@wrmpb /p/t/permissions> ls d will@wrmpb /p/t/permissions> 如果我更改了写入和执行权限,则可以看到该文件。 will@wrmpb /p/t/permissions> chmod 500 d will@wrmpb /p/t/permissions> ls d …
14 permissions  osx  fish 

5
在bash和鱼之间共享环境变量
bash和fish脚本不兼容,但是我想拥有一个文件,该文件定义了一些由bash和fish初始化的环境变量。 我建议的解决方案是定义一个~/.env文件,其中包含以下环境变量列表: PATH="$HOME/bin:$PATH" FOO="bar" 然后,我可以仅以bash形式提供它,并制作一个脚本,将其转换为fish格式并以fish形式提供。 我当时想可能有比这更好的解决方案,所以我想寻求一种更好的方法来在bash鱼之间共享环境变量。 注意:我正在使用OSX。 这是一个示例.env文件,我希望fish和bash都使用荒谬的fish语法处理(假设〜/ bin和〜/ bin2是空目录): setenv _PATH "$PATH" setenv PATH "$HOME/bin" setenv PATH "$PATH:$HOME/bin2" setenv PATH "$PATH:$_PATH"

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.