簡體   English   中英

linux bash命令由空格分隔

[英]linux bash command separate by space

所以我試圖一次只顯示列

首先ls -l給了我這個

drwxr-xr-x 11 stuff stuff      4096 2009-08-22 06:45 lyx-1.6.4
-rw-r--r--  1 stuff stuff  14403778 2009-10-26 02:37 lyx.tar.gz

我正在使用這個:

ls -l |cut -d " " -f 1 

得到這個

drwxr-xr-x 
-rw-r--r-- 

它顯示我的第一列就好了。 然后我想在第二欄看到

ls -l |cut -d " " -f 2

我只能得到這個

11

我不應該得到

11
1


它為什么這樣做?

如果我試試

   ls -l |cut -d " " -f 2-3

我明白了

11 stuff

有一個更簡單的方法來顯示列嗎?

這應該顯示第二列:

ls -l | awk '{print $2}'

cut認為兩個連續的分隔符之間有一個空字段。 所以第二行:

-rw-r--r--  1 stuff stuff

有字段:

1: -rw-r--r--
2: --empty field--
3: 1
etc.

您可以在剪切中使用使用列字段:

ls -l | cut -c13-14

或者您可以使用awk來分隔字段(取消鏈接,剪切awk會將順序分隔符視為單個分隔符)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM