怎样在 Windows 平台直接运行 Ruby 程序,不用 cmd

Python013

怎样在 Windows 平台直接运行 Ruby 程序,不用 cmd,第1张

在windows下启动JBoss服务器,需要在命令行中输入run.bat。但是运行后如果你想停止服务器,可能的做法就是直接按Ctrl+C键强行终止服务器,显然这种方式是不友好的。另一种方法就是再开一个cmd窗口,进入Jboss的bin目录,然后键入shutdown.bat

Mac系统外接显示器色彩不正确的问题,是因为Mac对于未识别的显示器,默认使用ycbcr的色彩空间来驱动,而Windows会默认使用RGB的色彩空间来驱动,而大部分显示器是不支持ycbcr色彩空间的,这个色彩空间主要是用在电视上,也就是说macOS上,未识别的显示器统一认为是电视。而Mac不像Windows,会积极适配各种外接硬件,macOS原生可以识别的显示器十分有限,这也就导致Mac外接第三方显示器基本上都是会有色彩问题的。

对于TypeC接口的Mac,有没有这个问题取决于转接头,有的转接头会兼容,有的转接头不兼容。

对于M1芯片的Mac这个问题暂时无法通过修改系统配置来解决,解决方法同TypeC接口的Mac,使用不同的转接头会有不同的效果。

# 解决方法

解决方法就是在macOS的系统文件夹下放入外接显示器的配置,并设置为RGB色彩空间来驱动。首先要生成配置文件。

在已经接了外接显示器的情况下,在命令行使用ruby运行 这个文件,就可以在用户目录生成配置文件,我的路径为:/Users/zhangzida/DisplayVendorID-5e3/DisplayProductID-3402

接着把这个文件夹放入/System/Library/Displays/Contents/Resources/Overrides就可以了。但是由于系统限制,系统文件夹是只读的,我们还要去关闭系统保护才能在这里面写文件。

# 对于Big Sur:

需要重启进入恢复模式,进入恢复模式的方式是按下Options开机,然后再按Command + R。

在恢复模式下的命令行输入:csrutil authenticated-root disable,然后再重启。

重启后在命令行输入sudo mount -o nobrowse -t apfs /dev/diskNsM /path/to/mntpoint挂载系统盘。diskNsM为 系统盘的设备名,在磁盘工具可以看到:

不器小窝

注意最后的s和之后的内容要截取掉,比如我的系统盘设备名为disk1s5s1,则diskNsM为disk1s5。/path/to/mntpoint为需要挂载的路径,可以为任意路径,我挂载到了下载文件夹。我的整个命令为:sudo mount -o nobrowse -t apfs /dev/disk1s5 /Users/zhangzida/Downloads/。

由于挂载到了下载文件夹,挂载好后,进入下载文件夹,就会进入到系统根目录了,我们把配置文件夹复制到相应的系统目录。

然后需要重建系统snapshot,使用到的命令为:sudo bless --folder /path/to/mntpoint/System/Library/CoreServices --bootefi --create-snapshot,我的情况用到的命令为:sudo bless --folder /Users/zhangzida/Downloads/System/Library/CoreServices --bootefi --create-snapshot。

然后重启电脑即可生效。

# 对于Catalina:

重启进入恢复模式,在恢复模式命令行输入csrutil disable,再重启进入系统。

在系统的命令行输入sudu mount -uw /。

在命令行用mv命令移动配置文件夹到相应的系统目录,我用到的命令为:sudo mv /Users/zhangzida/DisplayVendorID-5e3 /System/Library/Displays/Contents/Resources/Overrides,请自行修改用户名为自己电脑上的。

重启电脑生效。

#