【发布时间】:2020-01-07 12:07:02
【问题描述】:
是否可以使用file.txt 作为参数运行命令,或者如果file.txt 不存在,则使用another_file.txt 运行命令?
为了使我的要求更现实,我想默认使用工作区文件运行 VSCode,或者,如果工作区文件不存在,则使用 .(当前文件夹),类似:
code *.code-workspace OR .
如果*.code-workspace存在,那么command应该等价于code *.code-workspace,否则commend应该等价于code .
可以在bash 或zsh 中使用吗? (我正在使用zsh + oh-my-zsh)
【问题讨论】:
-
是的,有可能。你试过什么?然后编辑您的问题,请发布您尝试过的内容。为什么它不起作用?所以你的问题是如何做到这一点或如何以“优雅的方式”做到这一点?
-
我用 if-else 尝试了自定义函数,它可以工作。但我想知道是否有任何优雅的方式来执行相同的操作?
-
如果当前目录下有多个工作区文件,你会怎么做?
-
@tom-fenech 在第一场比赛中运行
code -
如果只是两个文件,我想不出一个看起来特别短的解决方案。如果我经常需要这个功能,我只需编写一个 shell 脚本(或函数),它会迭代其参数并将第一个参数打印到与现有文件对应的标准输出。编写此脚本后,您不需要任何复杂的
if逻辑。
标签: bash terminal command-line-interface zsh