2009-10-29 87 views
1

我需要刪除文本文件中每行的前三個空格。刪除前三個空格

我曾嘗試以下:

sed 's/ //3' 

這僅刪除第三次出現。

sed 's/ //3g' 

這使得前三出現的單獨空間,並刪除所有以下的,這是我想要的完全相反。

回答

6
sed -e 's/ //' -e 's/ //' -e 's/ //' 
+3

' 'S///; S///; S///''我救了10個字符! – LiraNuna 2009-10-29 23:35:41

+0

我不敢相信我沒有想到這個解決方案。 – ytu903 2009-10-30 00:36:38

0

sed 's/ \{1,3\}//' < file.txt

+0

只爲我獲得第一個......你確定? – Deverill 2009-10-29 23:07:45

+2

這隻適用於有3個連續空格的情況。 – EmFi 2009-10-29 23:37:16

+0

無用的貓' – 2009-10-30 01:47:21

1
 
sed 's/ \([^ ]*\) \([^ ]*\) /\1\2/' < filename 
+0

什麼是重定向? – 2009-10-30 01:46:49

+0

不需要重定向.... – ghostdog74 2009-10-30 04:04:39

+0

你是對的。習慣的力量。 – Beta 2009-10-30 14:18:17