-1

请解压下载的文件:
http
://s.yunio.com/MT3r2x 数据格式为:

   ‘x + y’                         x plus y                                  
   ‘x - y’                         x minus y                                 
   ‘x*y’                           juxtapose x and y                         
   ‘x/y’                           x forwardslash y                          
   ‘x %+-% y’                      x plus or minus y              

为了

cut -c 1-43   maths.txt  

输出是:

   ‘x + y’                         
   ‘x - y’                         
   ‘x*y’                           
   ‘x/y’                           
   ‘x %+-% y’                      

为了

cut -c 44-    maths.txt  

输出是:

x plus y                                
x minus y                               
juxtapose x and y                       
x forwardslash y                        
x plus or minus y 

这两个领域是我想要得到的。

为什么我不能使用以下命令将其分成两个字段?
cut -d' ' -f2 maths.txt 或者 cut -d' ' -f2 maths.txt(ctrl+v+tab) 两者都做不到。

4

2 回答 2

0

cut计算字段数,与前一个字段无关。所以unline awk,3个连续的空格代表3个字段。所以尝试使用cut -d' ' -f-42 maths.txt或反过来,你应该看到它生效。-f2这只是绝对的第二个字段,应该是空白。-f-42是打印直到第 42 场的所有内容,并-f43-打印从第 43 场开始的所有内容。

于 2013-05-07T13:31:22.333 回答
0

cut -d' ' -f2 maths.txtcut -d' ' -f2 maths.txt(ctrl+v+tab) 正在工作。问题是他们在第一个空格之后和第二个空格之前的每一行中打印文本。由于您有很多空间,它只显示空间。

你可以做的是 cat 原始的并使用col这样的管道:

cat maths.txt | col | cut -d$'\t' -f1 # first col 
cat maths.txt | col | cut -d$'\t' -f2 # second col
于 2013-05-07T13:31:33.177 回答