如何使用awk替换文件中所有行的前100个字符?此文件中没有字段分隔符。所有字段都是固定宽度。鉴于数据的变化,我无法使用搜索和替换。
答案 0 :(得分:2)
sed
怎么样?要用A
:
$ sed -r 's/.{100}/A/' file
如果您对结果感到满意,请使用-i
重写文件:
$ sed -ri 's/.{100}/A/' file
答案 1 :(得分:1)
awk '{print "replacing text..." substr($0,100)}'
答案 2 :(得分:1)
使用纯shell。
#!/usr/bin/env bash
# read each line into shell variable REPLY
while read -r ; do
echo "REPLACE text ... ${REPLY:100}"
done <file
REPLY
是shell变量,请参阅http://www.gnu.org/software/bash/manual/html_node/Bash-Variables.html。 Set to the line of input read by the read builtin command when no arguments are supplied
${REPLY:100}
- 获取100个字符后的字符串。