如何使用输出命令(我有一台 Solaris 机器)?
例如,我只想将“24-09-2009 16:17:45”等所有其他日期和时间加粗。
tput 将写入我的 ksh 脚本。
TIMESTAMP SET_ID TELEPHONE No TYPE
------------------- ---------- -------------------- ---------- ------------------
24-09-2009 16:17:45 0 33633333333 20 other_mms_phone
24-09-2009 17:45:07 0 33644444444 20 other_mms_phone
07-10-2009 10:45:49 0 12312312312 20 legacyphone
07-10-2009 11:46:38 0 59320000043 20 other_mms_phone
尝试用这个解决方案-但是在我的 Solaris 机器上不起作用?
awk 'NR>2' output.csv | sed 's/^\(.\{2\}\)\(.\{19\}\)/\1'$(tput rmso ) '/'
非法变量名。
答案1
awk 'NR>2' inputfile.txt |\
sed 's/^\(.\{2\}\)\(.\{19\}\)/\1'$(tput smso)'\2'$(tput rmso)'/'
awk
跳过标题,- sed 选取字符 2 之前的所有字符并将它们放入组 中
\1
,并选取接下来的 19 个字符并将它们放入组 中\2
,然后在组 2 之前和之后插入tput smso
和tput smso
(根据 开始和结束加粗)。man tput