Python - Chia sẻ file cực nhanh trong mạng nội bộ với 1 dòng lệnh

Python - Chia sẻ file cực nhanh trong mạng nội bộ với 1 dòng lệnh

Người dùng Linux thực ra không thiếu lựa chọn để chia sẻ file. Ta có thể dùng chia sẻ FTP, NFS mounting truyền thống của Unix, có thể tạo SSH server và dùng SFTP truy cập an toàn, hoặc nếu muốn ít phải setup hơn mà vẫn đồng bộ được với mạng Windows thì có Samba. Tuy nhiên, tất cả các giải pháp trên đều không phù hợp với tình huống đột nhiên bạn có một vài file nhỏ nhỏ muốn copy nhanh giữa các máy với nhau. Google nhanh có thể tìm thấy một vài [COLOR=rgba(0, 0, 0, 0)]công cụ chuyên biệt[/COLOR] cho việc này nhưng tôi sẽ giới thiệu với bạn một cách vô cùng thuận tiện, không phải cài đặt thêm bất cứ thứ gì mà chỉ cần có Python luôn luôn sẵn có trong gần như tất cả các Linux distro thông dụng, kể cả Mac OS X cũng cài sẵn.

Giả sử tôi muốn chia sẻ thư mục /home/chin/public, trước hết tôi sẽ cd đến thư mục này:

Mã (text):
$ cd /home/chin/public

Sau đó chạy lệnh này để tạo HTTP server:

Mã (text):
$ python -m SimpleHTTPServer

Bam! Bạn đã có một HTTP server chia sẻ tất cả những file bạn có trong thư mục/home/chin/public đang listen trên cổng 8000. Ngay bây giờ bạn có thể kiểm tra bằng cách bật Firefox hoặc Chrome, truy cập địa chỉ 0.0.0.0:8000 (hoặc localhost:8000, tùy bạn) sẽ thấy kết quả hiện ra như sau:

Python - Chia sẻ file cực nhanh trong mạng nội bộ với 1 dòng lệnh

 

Click vào bất cứ file nào để tải về.
Để truy cập trang web này từ một máy khác trong mạng LAN, bạn cần biết địa chỉ IP hiện tại của máy mình trong mạng nội bộ bằng cách chạy lệnh sau:

Mã (text):
$ ifconfig

Kết quả của bạn có thể có dạng như thế này:

Mã (text):
eth0      Link encap:Ethernet  HWaddr 10:1f:74:ea:08:6b 
 
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
 
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
 
          collisions:0 txqueuelen:1000
 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
 
          Interrupt:46 Base address:0x6000 
 
wlan0    Link encap:Ethernet  HWaddr d0:df:9a:af:31:55 
 
          inet addr:192.168.29.171  Bcast:192.168.29.255  Mask:255.255.255.0
 
          inet6 addr: fe80::d2df:9aff:feaf:3155/64 Scope:Link
 
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
 
          RX packets:3205830 errors:0 dropped:0 overruns:0 frame:0
 
          TX packets:2575431 errors:0 dropped:0 overruns:0 carrier:0
 
          collisions:0 txqueuelen:1000
 
          RX bytes:3286071184 (3.2 GB)  TX bytes:1234751640 (1.2 GB)

Tôi đang dùng mạng Wifi nên tôi quan tâm đến mục wlan0 ở dưới dùng, để ý dòng inet addr:192.168.29.171 là địa chỉ IP hiện tại của máy tôi trong mạng LAN (nếu bạn dùng Ethernet cắm dây thì xem mục eth0).

Như vậy, ở những máy còn lại, tôi chỉ cần truy cập địa chỉ http://192.168.29.171:8000 là có thể tải được những file đang được chia sẻ ở máy tôi.

Tags: 
Bạn thấy bài viết này như thế nào?: 
No votes yet
Ảnh của Khanh Hoang

Khanh Hoang - Kenn

Kenn is a user experience designer and front end developer who enjoys creating beautiful and usable web and mobile experiences.

Tìm kiếm bất động sản

 

Advertisement

 

jobsora

Dich vu khu trung tphcm

Dich vu diet chuot tphcm

Dich vu diet con trung

Quảng Cáo Bài Viết

 
Làm thế nào để facebook không gửi mail?

Làm thế nào để facebook không gửi mail?

Facebook có quá nhiều ưu điểm khiến cho chúng ta “mê mệt” nhưng nó cũng có những điểm làm chúng ta cảm thấy rất khó chịu.

Drupal 8 Module Development: Phần 2 - tạo Forms

Drupal 8 Module Development: Phần 2 - tạo Forms

Like all Drupal 8 module development, creating forms isn't quite as straight forward as it has been in the past using the hook system.

Theo dõi eCommerce metrics với Google Analytics

Theo dõi eCommerce metrics với Google Analytics

Knowing how your email communication performs in terms of ROI can say a lot about whether or not your message resonates with your target audience.

Công ty diệt chuột T&C

 

Diet con trung