Unix:如何读取第'行;从文件中删除原始内容

Unix:如何读取第'行;从文件中删除原始内容,unix,echo,trim,cut,Unix,Echo,Trim,Cut,我有一个数据文件,内容如下: department: customer service section: A department: marketing section: A department: finance section: A 当我阅读每一行时,我会使用cut命令提取部门名称 不幸的是,程序将自动修剪所有冗余空间和 因此,我把部门名称剪错了 cat dept.dat | while read line do echo $line

我有一个数据文件,内容如下:

department: customer service  section: A
department: marketing         section: A
department: finance           section: A
当我阅读每一行时,我会使用
cut
命令提取部门名称

不幸的是,程序将自动
修剪
所有冗余空间和

因此,我把部门名称剪错了

cat dept.dat | while read line
do
    echo $line
    echo $line | cut -c 12-29
done
e、 g.原始行是

department: marketing         section: A
程序将此行视为:

department: marketing section: A
如何在不修剪所有多余空间的情况下读取该行


非常感谢。

cut
不会修改空格。如果您查看输出,您将看到在将空白输入到
cut
之前,已经对其进行了修剪

读取时不需要
,只需将文件名直接传递到
cut

/tmp >cat dept.dat 
department: customer service  section: A
department: marketing         section: A
department: finance           section: A    
/tmp >cut -c 12-29 dept.dat 
customer service 
marketing        
finance 

而且,如果出于其他原因O.P.需要使用loop,则引用类似于
“$line”
。祝大家好运。啊,是的,我误读了他的帖子
echo“$line”
是真正的解决方案。感谢所有提供建议的人。它现在解决了我的问题。因为我需要实现更多的业务逻辑,所以需要逐行读取文件