Skip to main content

[CLI] nối dòng

Một bạn giấu tên hỏi: làm thế nào để nối nhiều dòng thành một dòng trong linux ?

Trả lời:
có rất nhiều cách để làm việc này, sau đây là vài cách đơn giản.

Tạo đề bài để test:
# for i in {1000..1005}; do echo $i; done
1000
1001
1002
1003
1004
1005
Xem thêm cách tạo dữ liệu giả ở đây: http://www.familug.org/2012/10/generate-random-data-part1.html

1. tr
$ whatis tr
tr(1)                    - translate characters
# echo """1000
1001
1002
1003
1004
1005""" | tr '\n' ' '; echo
1000 1001 1002 1003 1004 1005
#        
Translate ký tự xuống dòng '\n' thành dấu cách ' '.
echo để xuống dòng sau khi in ra kết cho dễ nhìn.

Để xoá ký tự '\n', dùng tr -d '\n'

2. xargs
Đây không phải là mục đích chính mà xargs được sinh ra, nhưng nó vẫn hoàn thành tốt
$ whatis xargs
xargs(1)                 - construct argument list(s) and execute util
# echo """1000
1001
1002
1003
1004
1005""" | xargs
1000 1001 1002 1003 1004 1005
#
3. python2 
python one-liner!
$ echo -e 'hehe\nhihi' | python -c "import sys; [sys.stdout.write(line.replace('\n', 'meomeo\n')) for line in sys.stdin]"
hehemeomeo
hihimeomeo
Ngắn hơn 1 chút:
$ echo -e 'hehe\nhihi' | python -c "import sys as s; [s.stdout.write(l.replace('\n', 'meomeo\n')) for l in s.stdin]"
hehemeomeo
hihimeomeo
Còn rất nhiều cách đang chờ bạn khám phá. Hãy giới thiệu cách bạn sẽ làm ở phần comment :3

Comments

Post a Comment

Popular posts from this blog

Tài liệu và hướng dẫn học Python

Để tiết kiệm thời gian, tốt nhất là đi học PyMI Updated: 130617 Sau đây là các tài liệu khuyên dùng: Vì nhiều lý do, nên học python2.7 tại thời điểm hiện tại (giờ là tháng 6/2013 - muốn biết tại sao thì tự tìm hiểu) python 3.5+ (giờ là tháng 2/2017) Chuẩn bị: 1. biết bật tắt máy 2. biết cài python 3. tập gõ 10 ngón - gõ 2 ngón hay 1 ngón cũng không sao, nhưng 10 ngón là cách dễ nhất để gõ nhanh nhất. Tài liệu - Nên dùng tài liệu tại trang chủ của Python làm chính, tham khảo thêm các tài liệu khác tại http://www.familug.org/2016/12/free-ebook.html Căn bản, mới học 1.1 Python PyMI.vn https://pymi.vn/tutorial/ 1.2. Python offical tutorial kết hợp làm bài tập trên HackerRank  (đề bài bằng tiếng Anh, nhưng Google translate 1 lúc cũng ra vì có nhiều ví dụ mẫu đi kèm). Học viên của Pymi.vn có rất nhiều học viên đã tự học với Learn Python the hard way nhưng chưa thấy ai thành công cả. Hai link dưới nên đọc sau khi đã nắm được những phần cơ bản của ngôn ngữ pytho...

The PyMiers

New FAMILUG