Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
请通过 unix shell 脚本命令帮助实现以下两个要求。
要求1:如果一个平面文件中有“N”列;在平面文件的第 5 列中,应该使用“def”进行盲更新,而不管那里的值如何(值可以是任何值,例如:abc、xyx、foo、den 等)。其余列值数据应保持不变
要求2:如果平面文件中有“N”列;在平面文件的第 5 列中,如果值为“abc”,则应将其替换为“def”,其余列值数据应保持不变。
问候, 斯里哈里
With :在语句awk中设置分隔符。BEGIN如果分隔符是空格,则删除BEGIN语句。
awk
BEGIN
要求1:
awk 'BEGIN{FS=OFS=":"}{for(i=1;i<=NF;i++)if(i==5){$i="def"}}1' your_file
要求 2:
awk 'BEGIN{FS=OFS=":"}{for(i=1;i<=NF;i++)if(i==5 && $i=="abc"){$i="def"}}1' your_file