以空格作為分隔符時 cut和awk處理的差異
[[email protected] programming]$ cat tab_space.txt |cut -d ' ' -f 1
this
this注意,兩個單引號之間可確實要有一個空格哦,不能偷懶。
而且,你只能在-d後面設定一個空格,可不許設定多個空格,因為cut只允許間隔符是一個字元。
ls -lc | cut -d ' ' -s -f 8-
10 cut有哪些缺陷和不足?
猜出來了吧?對,就是在處理多空格時。
如果檔案裡面的某些域是由若干個空格來間隔的,那麼用cut就有點麻煩了,因為cut只擅長處理“以一個字元間隔”的文字內容
/* 參考:
*/
例子:
[[email protected]
[[email protected] qt-everywhere-opensource-src-4.7.4 12:22:46]$ls --time=c -lrth | awk '{print $6,$7,$8,$9}' > /tmp/ls_time-c_lrth.txt
GOOGLE: linux awk printf field till line end $NF;
awk中只能使用for迴圈!:
You could use a for-loop to loop through printing fields $2 through $NF (built-in variable that represents the number of fields on the line).
Edit: Since "print" appends a newline, you'll want to buffer the results: awk '{out=""; for(i=2;i<=NF;i++){out=$out" "$i}; print $out}'
Alternatively, use printf: awk 'for(i=2;i<=NF;i++){printf "%s ", $i}; printf "\n"}'
相關推薦
以空格作為分隔符時 cut和awk處理的差異
[[email protected] programming]$ cat tab_space.txt |cut -d ' ' -f 1 this this注意,兩個單引號之間可確實要有一個空格哦,不能偷懶。 而且,你只能在-d後面設定一個空格,可不許設定多個空格
精簡程式碼:Python的split方法函式可以分割字串成列表,預設是以空格作為分隔符sep來分割字串。
Python的split方法函式可以分割字串成列表,預設是以空格作為分隔符sep來分割字串。 In [1]: s = "www jeapedu com" In [2]: print s.split() ['www', 'jeapedu', 'com']
用cin輸入變數的值時,如何以逗號作為分隔符
char *names,*numbers;names=new char[20];char c;numbers=new char[20];cin.getline(names,15,',');//names是指向字串的指標,15代表了能夠讀入的輸入字元的個 //數包括陣列最後的
用一個函式實現將一行字串中最短的單詞輸出。此行字串從主函式傳遞給該函式。假設字串中包含的單詞以空格作為分隔符號,例如”Asia Games 2010 is held in GuangZhou.”,其中最短的單詞是”is”和”in”。
山大 23:57:13 /* 輸入完單詞後不用再加空格!如果是兩個單詞一樣短還不能實現*/ #include<stdio.h>#include<string.h>void main(){int f(char str[],char str1[],int
如何使用逗號 (,) 作為分隔符 sscanf示例和fscanf示例
一、sscanf示例/* The following sample illustrates the use of brackets and the caret (^) with sscanf(). Compile options needed: none*/ #inc
sed、cut和awk命令的使用
sed命令的使用 語法 sed[-n] ‘editing command’ [file…] sed[-n] –e ‘editing command’ [file…] sed[-n] –
C++讀取以空格作為資料區分標記,以回車為行標記的txt檔案到一個整數陣列(字串妙用)
這次讀取的就是上一篇中的original檔案的每一行到一個整數陣列中。 使用getline(預設吧回車符endl作為行標記)分別把每一行讀入到一個字串陣列,在這個字元數字最後加上/0構成一個字串; 使用strtok函式把每行組成的字串以空格為標記
Java字串使用Split以豎線作為分隔符
今天用到了Java中的Split函式,要以“|”作為分割符,當輸入豎線時,發現出錯,這個問題應該很久前就遇到過,不過太長時間就給忘了! 網上一搜,就找到了答案,這是因為split裡面有兩個引數,其中
java中的String.split() 中“|”作為分隔符的問題和陣列長度問題
我們把一個字串轉化成一個數組的時候都是用到了String.split()這個函式。 可是有一些問題我們需要注意。 以下是我碰到的問題,總結了一下。 1,“|”作為分隔符 public static void main(String[] args) {
使用sed和awk將文件中的非雙引號中的逗號分隔符替換為豎線
txt 豎線 $0 文件 文件中 sed和awk gin int 引號 原始文件:$ vi 5.txt"2018-08-13","aa,bb,cc,dd",zwfer,18,"qw,qe,r,ds,fd",888&
Java 輸入一行以空格分隔字元作為輸入資料轉存為陣列形式並輸出
用java寫一些演算法題目的時候需要輸入一些資料,像C或者CPP都可以有專用的輸入函式進行輸入,在Java裡需要稍微麻煩一些,具體程式碼如下: import java.util.Scanner; public class Main{ public static void main(
shell if判斷(曾經被一個字串相等的判斷糾結半小時,最後只是if後少了個空格!) 和 awk引用外部變數判斷
一、if判斷 數字: $A=12 $B=15 if(("$A"<"$B")) if(("$A"=="$B")) 字串: $A="HELLO" $B="WORLD" if [ "$A" = "FACT_LOGIN_USER" ] if [ "$A" =
button、input和a標籤作為按鈕時的區別
我們都知道,button、input、a標籤都可以加上一定的樣式之後成為外觀上沒有太大差別的按鈕,那麼,這三個標籤都適合在什麼場景下作為按鈕使用呢? <button>提交</but
如何在node和vue以axios作為互動的專案中使用cookie或者set-cookie
最近在用vue+node+mysql重構專案,前端用的vue+typescript寫的,後端用的express框架,沒有用太多的外掛,用原始擼的。 專案地址https://github.com/Vitaminaq/node-mysql&
Android Toolbar作為ActionBar時更改Title和Overflow Icon的顏色
想使用Toolbar來作為Android應用程式的ActionBar。 Style.xml如下 <resources> <!-- Base application theme. --> <style name="AppThem
awk 中 用“||“ 作為分隔符的方法
1). awk的多字元分隔符: awk通常只支援單字元的分隔符,但gawk 支援多字元作為分隔符; 在linux下,awk是gawk的的符號連結檔案,因此支援多字元作為分隔符; 2). awk 表示分隔符的方法: a). awk的選項: -F ‘分割字元’
Cut用法 和 awk的相關區別
-b :以位元組為單位進行分割。這些位元組位置將忽略多位元組字元邊界,除非也指定了 -n 標誌。 -c :以字元為單位進行分割。 -d :自定義分隔符,預設為製表符。 -f :與-d一起使用,指定顯示哪個區域。 -n :取消分割多位元組字元。僅和 -b 標誌一起使用。如果
Scanner的enter和空格作為結束符號的問題
import java.util.Scanner; public class Scaner_1 { public static void main(String[] args) { Scanner sc=new Scanner(System.in);
Java 字串分割函式 split() 在分割以“.”為分隔符時出現的問題
Java 中字串的操作是很重要的一個環節,java 自帶了很多的關於字串的操作。 其中 spilt() 作為分割函式,用到的情況很多。 但是 是否遇到當以“.” 作為分割符時,不能分割的情況呢。我想應
HashMap中使用自定義類作為Key時,為何要重寫HashCode和Equals方法
ide string https object 避免 equals方法 args sys 添加 之前一直不是很理解為什麽要重寫HashCode和Equals方法,才只能作為鍵值存儲在HashMap中。通過下文,可以一探究竟。 首先,如果我們直接用以下的Person類