Tôi muốn thay thế tất cả các tab bằng một tab có chứa sed. Tôi cố gắng để sử dụngthay thế các tab bằng một tab duy nhất trong sed
sed 's:\t+:\t:' .\text.CSV > newtext.csv
nhưng điều này dường như không làm việc
Nếu tôi mở siêu việt và thay thế bằng regex tất cả \t+
để \t
nó hoạt động đúng
gì là sai với tôi sed?
Ngoài ra, nếu tôi thay thế các tab với một dấu phẩy với
sed 's:\t\t*:,:g' text.CSV > newtext.csv
tôi nhận được loại này của dòng
264262360,20030826,200308,2003,2003.6466,BUS,EMPLOYER,,,,,,BUS,,, ,,,,,,,,,,0,051,051,05,1,3.4,12,2,12,5.24866163479182,1
Ghi '+ 'có nghĩa là một hoặc nhiều hơn như vậy cũng có thể được viết '\ t \ t *' – potong
Nếu '\ t' không hoạt động, hãy thử sử dụng [Ctrl] - [v] [Tab] ([xem câu trả lời này] (http://stackoverflow.com/questions/6392249/how-to-enter-a-tab-char-on-command-line)) nếu làm việc trong một thiết bị đầu cuối * nix. Việc sao chép một ký tự tab có thể hoạt động, nhưng trong các tab đầu cuối của tôi đã được thay thế bằng bốn dấu cách. –