【发布时间】:2021-06-25 13:28:28
【问题描述】:
我喜欢我的终端输出是彩色的。 我不喜欢处理 bash 配置文件。
所以我以前只是在终端(macOS)中执行这两个命令:
export CLICOLOR=1
export LSCOLORS=GxFxCxDxBxegedabagaced
它完成了这项工作。 当然,每次我想给我的外壳上色时,写它们很快就会变得很累。
所以我想:让我们用 Ruby 脚本自动执行这些操作:
#!/usr/bin/env ruby
puts "\n======== COLOR ME =======\n"
puts %x{export CLICOLOR=1}
puts %x{export LSCOLORS=GxFxCxDxBxegedabagaced}
puts "You are now colored\n"
puts ""
因此,在正确的目录中,我的意图是简单地执行这个简单的命名脚本:
ruby colorme.rb
问题来了: 我创建它时它曾经工作过。 现在我们只是几天后,它不再起作用了。我不知道为什么... 我没有更新任何东西,没有移动任何文件(至少我是这么认为的)......
有什么想法吗?
提前谢谢你
【问题讨论】:
-
抱歉,您无法使用 Ruby 为调用 shell 定义环境变量。只需将这些导出添加到您的
~/.bash_profile或其他任何地方 -
@Fravadona 谢谢。我更好地理解了为什么我的脚本现在无效。不幸的是,使用 bash_profile 文件对我来说不是一个解决方案。我的工作需要一直在许多不同的计算机(不同的操作系统版本)上工作。运行一个简单的脚本对我来说听起来更有吸引力(从工作流程的角度来看),而不是每天在不同的系统、不同的环境中修改许多不同的 bash 配置文件。编写脚本来修改 bash 配置文件或替换 bash 配置文件对我来说听起来也很冒险、不可行、不可维护。无论如何,谢谢你的澄清。