我有一个文本文件要输出到我的 shell 脚本中的一个变量。但是,我只需要前 50 个字符。
我试过使用,cat ${filename} cut -c1-50但我得到的远远超过前 50 个字符?这可能是由于cut寻找行(不是 100% 确定),而此文本文件可能是一个长字符串——这确实取决于。
是否有一个实用程序可以让我通过管道从cat命令中获取前 X 个字符?
我正在编写一个应该在 OSX 和 Ubuntu 上运行的 bash 脚本。我不确定这个特殊问题是否是由于操作系统不匹配造成的;更可能是两个 shell 上的 date 命令有所不同,即使它在两个 shell 上都是 bash?让我们来看看。
在 OSX 的 bash shell 上,为了打印两天前的日期,我们这样做:
date -v-2d +"%Y"."%m"."%d"
但是,该-v标志在 Ubuntu bash shell 上无效。相反,我们正在使用:
date --date="2 days ago" +"%Y"."%m"."%d"
不幸的--date是,我们的 OSX bash shell 无法识别该标志。
我想要一个带有在两种情况下都可以使用的标志的命令,有人知道我可以尝试什么吗?