草庐IT

linux - ZSH 中的文件完成优先级

我有一个shell模式,将一些文件标记为“无聊”,即备份文件,pyo文件、vim备份、自动生成的目录等。我们称它为$BORING_STUFF.zstyle':completion:*'file-patterns\'%p:globbed-items'\'*(^-/):regular-files'\'*(^-/):boring-files'\'.*(^-/):hidden-files'\'*(-/):regular-directories'\'*(-/):boring-directories'\'.*(-/):hidden-directories'在这种情况下,每个组的范围也受适用igno

linux - $PWD 是否总是等于 ${${ :-. }:A}

给定现代Linux/UNIX/OSXzsh5+setoptchase_linksPWD没有异常设置是[["$PWD"=="${${:-.}:A}"]]总是正确的? 最佳答案 不,这并不总是正确的:xvii:~>ls-lfoolrwxrwxrwx1vinc17vinc17102014-07-0501:12:06foo->bar/subdir/xvii:~>bashvinc17@xvii:~$cdfoovinc17@xvii:~/foo$pwd/home/vinc17/foovinc17@xvii:~/foo$zsh-fxvii%ech

linux - $PWD 是否总是等于 ${${ :-. }:A}

给定现代Linux/UNIX/OSXzsh5+setoptchase_linksPWD没有异常设置是[["$PWD"=="${${:-.}:A}"]]总是正确的? 最佳答案 不,这并不总是正确的:xvii:~>ls-lfoolrwxrwxrwx1vinc17vinc17102014-07-0501:12:06foo->bar/subdir/xvii:~>bashvinc17@xvii:~$cdfoovinc17@xvii:~/foo$pwd/home/vinc17/foovinc17@xvii:~/foo$zsh-fxvii%ech

linux - 显示或重定向 shell 的作业控制消息

长话短说所有作业控制/崩溃消息在函数内出现时都被隐藏。我在下面详细介绍,但是@Barmar已经指出可以通过在函数内部运行崩溃的二进制文件来重现此问题,例如:crun(){/tmp/faulty$1$2$3}我在我的.zshrc中定义了一个函数来编译和运行带有以下函数的源代码:crun(){localfile=$1shiftlocalexepath="$(mktemp)"if[[$file=~"\.c$"]];thengcc-g-Wall$file-o$exepath||return$?elseecho"nofiletypedetected"return126fi$exepath"$@"

linux - 显示或重定向 shell 的作业控制消息

长话短说所有作业控制/崩溃消息在函数内出现时都被隐藏。我在下面详细介绍,但是@Barmar已经指出可以通过在函数内部运行崩溃的二进制文件来重现此问题,例如:crun(){/tmp/faulty$1$2$3}我在我的.zshrc中定义了一个函数来编译和运行带有以下函数的源代码:crun(){localfile=$1shiftlocalexepath="$(mktemp)"if[[$file=~"\.c$"]];thengcc-g-Wall$file-o$exepath||return$?elseecho"nofiletypedetected"return126fi$exepath"$@"

linux - 从命令行打开文件时使 vim 遵循符号链接(symbolic link)

我是vim的狂热爱好者,但我找不到让vim在打开文件时跟随符号链接(symboliclink)的方法。例如,我主目录中的所有点文件都符号链接(symboliclink)到.zprezto目录中:.vimrc->~/.zprezto/runcoms/vimrc.zshrc->~/.zprezto/runcoms/zshrc我将我的.zprezto分支保存在一个私有(private)的git存储库中,然后用于使我所有的Mac/Linux机器和服务器保持同步。每当我在vim中编辑这些文件中的任何一个时,我用于git管理的插件都无法正常工作,因为我在调用vim~/.zshrc时访问的符号链接(

linux - 从命令行打开文件时使 vim 遵循符号链接(symbolic link)

我是vim的狂热爱好者,但我找不到让vim在打开文件时跟随符号链接(symboliclink)的方法。例如,我主目录中的所有点文件都符号链接(symboliclink)到.zprezto目录中:.vimrc->~/.zprezto/runcoms/vimrc.zshrc->~/.zprezto/runcoms/zshrc我将我的.zprezto分支保存在一个私有(private)的git存储库中,然后用于使我所有的Mac/Linux机器和服务器保持同步。每当我在vim中编辑这些文件中的任何一个时,我用于git管理的插件都无法正常工作,因为我在调用vim~/.zshrc时访问的符号链接(

linux - bash 脚本和 zsh shell 中数组的行为(起始索引 0 或 1?)

我需要解释数组在shell脚本中的以下行为:假设给出以下内容:arber@host~>lsfileAfileBscript.sh现在我可以执行以下命令:arber@host~>ARR=($(ls-dfile*))arber@host~>echo${ARR[0]}#startindex0arber@host~>echo${ARR[1]}#startindex1fileAarber@host~>echo${ARR[2]}#startindex2fileB但是当我通过script.sh执行此操作时,它的行为有所不同(起始索引=0):arber@host~>catscript.sh#!/bin

linux - bash 脚本和 zsh shell 中数组的行为(起始索引 0 或 1?)

我需要解释数组在shell脚本中的以下行为:假设给出以下内容:arber@host~>lsfileAfileBscript.sh现在我可以执行以下命令:arber@host~>ARR=($(ls-dfile*))arber@host~>echo${ARR[0]}#startindex0arber@host~>echo${ARR[1]}#startindex1fileAarber@host~>echo${ARR[2]}#startindex2fileB但是当我通过script.sh执行此操作时,它的行为有所不同(起始索引=0):arber@host~>catscript.sh#!/bin

linux - 如何阻止 zsh 脚本被挂起(tty 输出)

我有一个我想要运行的zsh脚本,这样它也可以加载我的.zshrc文件。我认为我必须以交互模式运行我的脚本?因此,我的脚本开始如下:#!/bin/zsh-iif[$#=0]thenecho"needcommandlineparamter..."exitfi但是,当我尝试在后台运行此脚本时,我的脚本被挂起(即使我传入了正确数量的参数):[1]+suspended(ttyoutput)我的问题是:我怎样才能制作一个可以在后台运行并同时加载我的启动.zshrc文件的脚本?如果我必须将其设置为交互模式,我该如何避免suspendedontty输出问题?谢谢 最佳答案