Có công cụ dòng lệnh nào trên Linux cho phép bạn đăng đầu ra từ các lệnh hoặc tệp văn bản trực tiếp lên dịch vụ chia sẻ như pastebin.com không?
Có công cụ dòng lệnh nào trên Linux cho phép bạn đăng đầu ra từ các lệnh hoặc tệp văn bản trực tiếp lên dịch vụ chia sẻ như pastebin.com không?
Câu trả lời:
Có một số dịch vụ cung cấp điều này nhưng 2 dịch vụ khá dễ sử dụng từ dòng lệnh là fpaste
và pastebinit
. Hai công cụ này liên kết đến các trang web, paste.fedoraproject.org và pastebin.com .
LƯU Ý: Đây là tùy chọn chỉ Fedora / CentOS / RHEL
Nếu bạn đang sử dụng bất kỳ bản phân phối dựa trên Red Hat nào, bạn có thể cài đặt gói fpaste
cung cấp cho bạn công cụ dòng lệnh để đăng nội dung lên paste.fedoraproject.org
.
Để đăng cơ bản một tập tin văn bản, bạn có thể làm như sau.
$ fpaste hello_unixnlinux.txt
Lệnh trên sẽ trả về một URL nơi người khác có thể truy cập nội dung của bạn.
...
Uploading (0.1KiB)...
http://ur1.ca/gddtt -> http://paste.fedoraproject.org/66894/89230131
Tất nhiên có một loạt các tùy chọn khác.
fpaste -i
fpaste --sysinfo
Xem trang người đàn ông, man fpaste
để biết thêm chi tiết.
Đây có lẽ là công cụ phổ biến hơn trong số 2 công cụ. Nó được hỗ trợ trên hầu hết các bản phân phối tôi thường gặp như Fedora, CentOS và Ubuntu chỉ để đặt tên cho một số. Nó có các tính năng tương tự fpaste
nhưng, bạn có thể làm nhiều hơn với nó, ví dụ:
Để bắt đầu, chúng tôi có thể nhận danh sách tất cả các URL "được hỗ trợ" thông qua công -l
tắc.
$ pastebinit -l
Supported pastebins:
- cxg.de
- fpaste.org
- p.defau.lt
- paste.debian.net
- paste.drizzle.org
- paste.kde.org
- paste.openstack.org
- paste.pocoo.org
- paste.pound-python.org
- paste.ubuntu.com
- paste.ubuntu.org.cn
- paste2.org
- pastebin.com
- pastie.org
- pb.daviey.com
- slexy.org
- sprunge.us
Nếu bạn không chọn một nút sử dụng công -b
tắc, nó sẽ chọn một cái dựa trên bản phân phối của bạn, giả sử có một cái cho nó, nếu không thì quay lại pastebin.com. Lưu ý rằng nó cũng hỗ trợ fpaste.org
, đối với Fedora, vì vậy bạn cũng có thể sử dụng công cụ này để trang trải dịch vụ dán đó.
Để gửi một tập tin mẫu đến pastebin.com
.
$ pastebinit -i hello_unixnlinux.txt -b http://pastebin.com
http://pastebin.com/d6uXieZj
Bạn cũng có thể nói rằng nội dung bạn dán là mã bằng cách sử dụng công -f
tắc. Ví dụ: đây là một đoạn script Bash. Chúng tôi cũng sẽ đặt tên cho tải lên bằng cách sử dụng công -a
tắc, để nó sẽ hiển thị với tên "ex_bash_1".
$ pastebinit -i sample.bash -f bash -a ex_bash_1 -b http://pastebin.com
http://pastebin.com/jGvyysQ9
Một danh sách đầy đủ các cú pháp được hỗ trợ, được đề cập trong pastebin.com FAQ trong chủ đề này có tiêu đề: Bạn cung cấp đánh dấu cú pháp cho ngôn ngữ nào? .
Để biết thêm chi tiết được chữa để kiểm tra các trang người đàn ông , man pastebinit
.
Dưới đây là 2 ví dụ về tệp mà tôi đã đăng lên mỗi dịch vụ.
fpaste - http://ur1.ca/gddtt
pastebin - http://pastebin.com/jGvyysQ9
pastebinit -l
.
Tôi thích hai công cụ dòng lệnh sử dụng curl
, được liệt kê trên Arch Wiki :
<command> | curl -F 'sprunge=<-' http://sprunge.us
<command> 2>&1 | curl -F 'f:1=<-' ix.io
Bạn có thể thực hiện một chức năng đơn giản để tiết kiệm bạn phải nhớ các chi tiết chính, như vậy:
sprung() { curl -F "sprunge=<-" http://sprunge.us <"$1" ;}
Bạn có thể gửi tới một URL nâng cao nếu bạn muốn tô sáng cú pháp để dán mã. Đối với ix, bạn nối thêm /ID/
URL ( http://ix.io/ID/ ) cho cú pháp mặc định dựa trên tự động phát hiện hoặc /ID/<language>/
để đặt rõ ràng ngôn ngữ cho tô sáng hình ảnh.
Đối với http://sprunge.us , hãy thêm ?<language>
hiệu ứng tương tự.
Tôi cần một cái gì đó để chia sẻ đầu ra thiết bị đầu cuối ngay cả khi máy chủ X không được tải nên tôi đã tạo dịch vụ này: termbin.com . Điều duy nhất bạn cần là netcat, sau đó bạn có thể dễ dàng chia sẻ với bất kỳ ai bất cứ điều gì có thể được hiển thị trong thiết bị đầu cuối, có ví dụ:
cat /etc/fstab | nc termbin.com 9999
Sau khi chạy lệnh này, bạn sẽ nhận được địa chỉ url phản hồi bằng tệp văn bản.
Để làm cho cuộc sống của bạn dễ dàng hơn, bạn có thể thêm bí danh đó vào tệp .bashrc của mình:
echo 'alias tb="nc termbin.com 9999"' >> .bashrc
Bây giờ chia sẻ sẽ đơn giản hơn nhiều:
uname -a | tb
Bạn có thể lấy những cái đã lưu chẳng hạn bằng cách sử dụng curl. Bạn sẽ tìm thấy nhiều ví dụ trên termbin.com .
Bạn cũng có thể lưu trữ máy chủ của riêng mình, có kho lưu trữ github: https://github.com/solusipse/fiche . Nếu bạn muốn đặt ở chế độ riêng tư, đừng quên đặt tham số danh sách trắng.
nc -v
bạn sẽ nhận được nc: connect to termbin.com port 9999 (tcp) failed: No route to host
.
Tôi đã viết trang web này được thực hiện đặc biệt để dán qua curl, vì tôi cảm thấy không ai phải nhớ cú pháp cụ thể như trong spunge. Nó cũng không chỉ là nguồn mở, mà còn hoàn toàn di động để bạn có thể dễ dàng thiết lập "curlpaste" của riêng mình với bất kỳ tên miền nào khác. tức là một máy chủ dán riêng.
curl --data-binary @your-file-here.txt https://curlpaste.com
Nếu bạn truy cập trang web, cũng có một giao diện web cung cấp các tùy chọn khác như đọc một lần và xóa.
Đây là một dịch vụ khác dường như cung cấp dịch vụ này: https://ctrlv.link/
Thêm mã trong một tệp input.txt
và chạy lệnh này từ cửa sổ đầu cuối:
$ curl --form "expiration=0" --form "code_type=nohighlight" \
--form "content=<input.txt" https://ctrlv.link/insert.php
Một ví dụ với mã C / C ++ (test.cpp):
$ curl --form "expiration=0" --form "code_type=cpp" \
--form "content=<test.cpp" https://ctrlv.link/insert.php`
Gần đây tôi đã tạo một công cụ dòng lệnh cho pastebin https://notepad.pw/ Tôi sử dụng thường xuyên
dán tập tin của bạn đơn giản như
npw -lo filename linkpath
vì vậy về cơ bản, nó sẽ dán nội dung vào https://notepad.pw/
Các l
lá cờ là để cập nhật trực asin nếu ai đó đang xem trang sẽ cập nhật mà không cần tải lại.
cờ 'o' là để ghi đè nếu bạn không sử dụng nó, nội dung sẽ được thêm vào nội dung hiện có.
Bạn có thể cài đặt công cụ qua pip
sử dụng lệnh.
pip install npw
Đây là trang github.
từ chối trách nhiệm: Đây là dự án của riêng tôi
Anypaste hiện hỗ trợ khoảng một tá dịch vụ giống như pastebin (đáng chú ý nhất là Hastebin và ix.io ). Bạn có thể đặt một cái gì đó trong some_command | anypaste
hoặc liệt kê rõ ràng một tập tin anypaste my_code.c
. Tải lên phương tiện cũng được hỗ trợ cho các trang web như Imgur và Gfycat; anypaste tự động phát hiện loại tệp để xác định nơi tải lên đầu vào.
Cách nhanh nhất để cài đặt là tải xuống tệp thực thi (đó là tập lệnh shell lớn):
sudo curl -Lo /usr/local/bin/anypaste https://anypaste.xyz/sh
Nhiều pastebins không yêu cầu bất kỳ công cụ đặc biệt. Curl hoặc wget sẽ làm.
https://paste.c-net.org/ là một ví dụ như vậy.
Đây là một đoạn trong "hướng dẫn":
Tải lên văn bản bằng cách sử dụng curl:
$ curl -s --data 'Xin chào thế giới!' ' http://paste.c-net.org/ '
Tải lên văn bản bằng wget:
$ wget --quiet -O- --post-data = 'Xin chào thế giới!' ' http://paste.c-net.org/ '
Tải lên một tệp bằng cách sử dụng curl:
$ curl --upload-file '/ tmp / file' ' https://paste.c-net.org/ '
Tải lên tệp bằng wget:
$ wget --quiet -O- --post-file = '/ tmp / file' ' http://paste.c-net.org/ '
Tải lên đầu ra của một lệnh hoặc tập lệnh bằng cách sử dụng curl:
$ ls / | cuộn tròn --upload-file ' http://paste.c-net.org/ '
$ ./bin/hello_world | curl --upload-file - ' http://paste.c-net.org/ '
Bạn cũng có thể chỉ đơn giản là ống công cụ để netcat
$ ls / | nc dán.c-net.org 9999
Không giống như termbin, paste.c-net.org sẽ không hết thời gian nếu tập lệnh của bạn mất hơn 5 giây để tạo đầu ra.
$ {ngủ 10; ls /; } | nc termbin.com 9999
$ {ngủ 10; ls /; } | nc dán.c-net.org 9999
Trang này cũng cung cấp các hàm Bash tiền tố cho tệp .bashrc của bạn.