此处的 Cygwin 用户(尽管如果有合适的解决方案,我会将其转移到我也使用的 K/Ubuntu)。
我的 .bashrc 中有一条欢迎消息,如下所示:
SAD=(`date +%A-%B-%d-%Y`)
DUB=(`date -u +%k:%M`)
printf "Today's Date is: ${SAD}.\n"
printf "Dublin time is now ${DUB}. (24-Hour Clock)\n"
在多次尝试在上面的变量 SAD 中使用空格之后,我放弃并使用了连字符。但可以理解的是,我对这种创可贴解决方案并不满意。我记得,问题是每次我尝试使用带引号的空格、\s 或一些类似的转义标记,以及 GNU 手册页的相应部分中列出的变量date时,Year 的变量要么被忽略,要么被返回一个错误。我不想做的是求助于date返回的完整字符串,而是保持我在上面代码中的顺序。
在我写这篇文章时,我突然想到,为欢迎消息设置此代码的 IFS 可能会起作用,前提是我之后将其恢复为默认值(上面出现在 68 行 .bashrc 的第 13-17 行)。但是,我不记得如何做到这一点,我也不确定它会起作用。
一般来说,.bashrc 文件是有效的 BASH 语法,不是吗?我的当然类似于我自己编写或从其他来源测试的脚本。我想,我所缺少的只是设置和取消设置此消息块周围的字段分隔符的代码。
毫无疑问,任何想出解决方案的人不仅对我有帮助,而且对网络上任何其他在 shell 脚本世界中迈出第一步(或第十三到第十七步)的相对新手都有帮助。
BZT