วิธีง่ายๆในการวางเอาต์พุตบรรทัดคำสั่งเพื่อวางบริการ bin หรือไม่


38

มีเครื่องมือบรรทัดคำสั่งบน Linux ที่อนุญาตให้คุณโพสต์เอาต์พุตจากคำสั่งหรือไฟล์ข้อความโดยตรงไปยังบริการแชร์เช่น pastebin.com หรือไม่


2
โปรดของฉันเมื่อจับคู่กับเชลล์สคริปต์ดีเป็นSprunge
DopeGhoti

ลองดูhttps://paste.c-net.org/มันมาพร้อมกับฟังก์ชั่น Bash ใช้งานได้ง่ายจากบรรทัดคำสั่งโดยไม่ต้องติดตั้งโปรแกรมเพิ่มเติม ดียกเว้นสำหรับขดซึ่งคุณอาจจะมีอยู่แล้ว :)
สายฟ้า

คำตอบ:


34

มีหลายบริการที่ให้นี้ แต่ 2 ที่มีสวยใช้งานง่ายจากบรรทัดคำสั่งที่มีอยู่และfpaste pastebinit2 เครื่องมือเหล่านี้เชื่อมโยงไปยังเว็บไซต์ที่paste.fedoraproject.orgและpastebin.com

fpaste

หมายเหตุ: นี่เป็นตัวเลือกเฉพาะ Fedora / CentOS / RHEL

หากคุณใช้ใด ๆ ของ distros Red Hat ตามคุณสามารถติดตั้งแพคเกจซึ่งจะช่วยให้คุณเป็นเครื่องมือบรรทัดคำสั่งสำหรับเนื้อหาที่จะโพสต์fpastepaste.fedoraproject.org

คำสั่งพื้นฐาน

สำหรับการโพสต์พื้นฐานของไฟล์ข้อความเดียวคุณสามารถทำดังต่อไปนี้

$ fpaste hello_unixnlinux.txt 

คำสั่งด้านบนจะส่งคืน URL ที่ผู้อื่นสามารถเข้าถึงเนื้อหาของคุณได้

...
Uploading (0.1KiB)...
http://ur1.ca/gddtt -> http://paste.fedoraproject.org/66894/89230131

คำสั่งอื่น ๆ

แน่นอนมีโฮสต์ทั้งหมดของตัวเลือกอื่น ๆ

  • วางคลิปบอร์ด: fpaste -i
  • วางข้อมูลระบบ: fpaste --sysinfo
  • แห้ง: `fpaste - พิมพ์ somefile.txt อย่างเดียว

ดูหน้าคนman fpasteสำหรับรายละเอียดเพิ่มเติม

pastebinit

นี่เป็นเครื่องมือที่ได้รับความนิยมมาก มันได้รับการสนับสนุนในส่วนใหญ่ของ distros ฉันบ่อยเช่น Fedora, CentOS และ Ubuntu เพียงเพื่อชื่อไม่กี่ มันมีคุณสมบัติที่คล้ายกันfpasteแต่คุณสามารถทำสิ่งต่าง ๆ ได้มากมายเช่น:

รายการบริการ

สำหรับผู้เริ่มต้นเราสามารถรับรายการ URL "ที่รองรับ" ทั้งหมดได้ผ่าน-lสวิตช์

$ 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

หากคุณไม่ต้องการเลือก-bสวิตช์โดยใช้สวิตช์ก็จะทำการเลือกตาม distro ของคุณโดยสมมติว่ามีหนึ่งสวิตช์สำหรับมันมิฉะนั้นจะกลับไปที่ pastebin.com โปรดสังเกตว่ามันยังรองรับfpaste.orgสำหรับ Fedora ดังนั้นคุณสามารถใช้เครื่องมือนี้เพื่อครอบคลุมการบริการการวางนั้นเช่นกัน

โพสต์ไฟล์ข้อความอย่างง่าย

pastebin.comหากต้องการโหลดไฟล์ตัวอย่าง

$ pastebinit -i hello_unixnlinux.txt -b http://pastebin.com
http://pastebin.com/d6uXieZj

รหัสการโพสต์

คุณสามารถบอกได้ว่าเนื้อหาที่คุณกำลังวางคือรหัสโดยใช้-fสวิตช์ ตัวอย่างเช่นนี่คือสคริปต์ Bash เราจะตั้งชื่อการอัปโหลดโดยใช้-aสวิตช์ด้วยเพื่อที่จะปรากฏขึ้นพร้อมกับชื่อ "ex_bash_1"

$ pastebinit -i sample.bash -f bash -a ex_bash_1 -b http://pastebin.com
http://pastebin.com/jGvyysQ9

รายการทั้งหมดของไวยากรณ์ที่ได้รับการสนับสนุนครอบคลุมอยู่ในคำถามที่พบบ่อยของ pastebin.com ภายใต้หัวข้อนี้หัวข้อ: ภาษาใดที่คุณให้ความสำคัญกับไวยากรณ์ .

man pastebinitสำหรับรายละเอียดเพิ่มเติมสามารถรักษาเพื่อตรวจสอบหน้าคน,

ตัวอย่าง

นี่คือตัวอย่างของไฟล์ที่ฉันโพสต์ลงในแต่ละบริการ

fpaste - http://ur1.ca/gddtt

   เอสเอสของ fpaste

pastebin - http://pastebin.com/jGvyysQ9

   เอสเอสของ pastebinit

อ้างอิง


ทั้งหมดเหล่านี้อ่อนเมื่อเทียบกับSprungeและHastebin , IMO (:
DopeGhoti

ใช่ฉันได้ยินเกี่ยวกับความยอดเยี่ยมของ Sprunge แต่ BTW ไม่เคยได้ยินจนถึงทุกวันนี้ มีเว็บไซต์เป็นเหมือน / dev / null และฉันพบอินเทอร์เฟซที่น่าอึดอัดใจเมื่อเทียบกับเครื่องมือจริงเช่นรายการที่ฉันได้แสดงไว้ แต่นั่นคือเหตุผลที่เรามีตัวเลือกมากมายเพื่อให้ทุกคนสามารถเลือกสิ่งที่พวกเขาชอบ 8-) ในทางตรงกันข้าม Hastebin ดูเหมือนจะขัดมากกว่านี้ฉันชอบที่คุณสามารถโฮสต์อินสแตนซ์ของคุณเองได้ระยะเวลาสูงสุด 30 วันเป็นตัวจัดการข้อตกลงสำหรับฉัน
slm

โปรดสังเกตว่า pastebinit สามารถโพสต์ไปที่ sprunge.us pastebinit -lมันอยู่ในรายชื่อที่ได้รับจาก
slm

โปรดเพิ่มหมายเหตุว่าคำสั่ง pastebinit ตัวอย่างใช้ชื่อผู้ใช้ท้องถิ่นของคุณเป็นชื่อที่วางซึ่งเป็นเรื่องที่ไม่พึงประสงค์
Dubslow

22

ฉันชอบเครื่องมือบรรทัดคำสั่งสองตัวที่ใช้curlอยู่ในArch Wiki :

<command> | curl -F 'sprunge=<-' http://sprunge.us

<command> 2>&1 | curl -F 'f:1=<-' ix.io

คุณสามารถสร้างฟังก์ชั่นง่าย ๆ เพื่อช่วยให้คุณไม่ต้องจำรายละเอียดของเลือดเช่น:

sprung() { curl -F "sprunge=<-" http://sprunge.us <"$1" ;}

คุณสามารถส่งไปยัง URL ที่ปรับปรุงแล้วหากคุณต้องการเน้นไวยากรณ์สำหรับวางรหัสของคุณ สำหรับ ix คุณต่อท้าย/ID/URL ( http://ix.io/ID/ ) ต่อท้ายสำหรับไวยากรณ์เริ่มต้นตามการตรวจจับอัตโนมัติหรือ/ID/<language>/ตั้งค่าภาษาอย่างชัดเจนสำหรับการเน้นข้อความ

สำหรับhttp://sprunge.usให้ผนวกเอ?<language>ฟเฟกต์เดียวกัน


คุณสามารถจัดรูปแบบเหล่านั้นหรือเลือกประเภทรหัสหรือเน้นไวยากรณ์ถ้ามีโดยอัตโนมัติตามสิ่งที่วางหรือไม่
slm

ไม่ใช่ว่าฉันรู้: มันแค่วางข้อความ แต่ฉันไม่ได้มองอะไรเพิ่มเติมอีกเพราะมันเป็นสิ่งที่ฉันต้องการ
jasonwryan

ดีมากฉันไม่แน่ใจว่ามีอินเทอร์เฟซแบบม้วนเพิ่มเติมในแง่ของสวิตช์พิเศษ ฯลฯ ซึ่งคุณสามารถรวมไว้ในคำขอได้
slm

เจอแล้ว. คุณสามารถกลัดใน? ตามด้วยชื่อของ langugae เพื่อรับการเน้นและหมายเลขบรรทัด ดูตัวอย่างนี้: sprunge.us/MFMY?bash
slm

เพียงทางออกที่ดีที่สุดและง่ายที่สุดออกมี รักชุมชน archlinux :)
nXqd

19

ผมจำเป็นต้องมีบางสิ่งบางอย่างที่จะแบ่งปันผลผลิตขั้วแม้เมื่อเซิร์ฟเวอร์ X ไม่ได้โหลดดังนั้นฉันสร้างบริการนี้: termbin.com สิ่งเดียวที่คุณต้องการคือ netcat จากนั้นคุณสามารถแบ่งปันกับทุกคนที่สามารถแสดงใน terminal ได้อย่างง่ายดายมีตัวอย่าง:

cat /etc/fstab | nc termbin.com 9999

หลังจากรันคำสั่งนี้คุณจะได้รับที่อยู่ url พร้อมไฟล์ข้อความ

เพื่อให้ชีวิตของคุณง่ายขึ้นคุณสามารถเพิ่มนามแฝงดังกล่าวไปยังไฟล์. bashrc ของคุณ:

echo 'alias tb="nc termbin.com 9999"' >> .bashrc

ตอนนี้การแบ่งปันจะง่ายขึ้นมาก:

uname -a | tb

คุณสามารถบันทึกสิ่งที่บันทึกไว้โดยใช้ curl คุณจะได้พบตัวอย่างเพิ่มเติมเกี่ยวกับtermbin.com

คุณสามารถโฮสต์เซิร์ฟเวอร์ของคุณเองเช่นกันมีพื้นที่เก็บข้อมูล GitHub: https://github.com/solusipse/fiche หากคุณต้องการทำให้เป็นส่วนตัวอย่าลืมตั้งค่ารายการที่อนุญาต


นอกจากนี้ยังมีpastebin-cliและยินดีต้อนรับสู่ U & L.SE
eyoung100

@solusipse; ระยะเวลาที่การวางจะยังคงอยู่บนเซิร์ฟเวอร์ของคุณ เป็นไปได้ตลอดไปไหม หรือมีลิงก์สำหรับลบการโพสต์
r004

1
@ r004 ดังที่กล่าวไว้ใน termbin.com "ช่วงชีวิตของการวางเพียงครั้งเดียวคือหนึ่งเดือน
Veerendra

น่าสนใจมาก แต่ไร้ประโยชน์หากคุณอยู่หลังไฟร์วอลล์ที่ปิดกั้นพอร์ต 9999 การใช้คุณจะได้รับnc -v nc: connect to termbin.com port 9999 (tcp) failed: No route to host
Pablo

5

ฉันใช้clitxtเพราะไม่ต้องมีบัญชีและไม่มีพารามิเตอร์หรือการตั้งค่าที่ต้องจำ คุณเพียงแค่ไพพ์คำสั่งเพื่อ clitxt และมันจะส่งคืน URL เช่น

root@server3219-old7 [~]# yum -y update | clitxt
https://clitxt.com/t/ad7-1426995329.txt

3

ฉันเขียนเว็บไซต์นี้ทำขึ้นเป็นพิเศษสำหรับการวางผ่านโดยม้วนเนื่องจากฉันรู้สึกว่าไม่มีใครควรจำไวยากรณ์ที่เฉพาะเจาะจงเช่นในการวิ่ง นอกจากนี้ยังไม่เพียง แต่เป็นโอเพ่นซอร์ส แต่ยังพกพาได้อย่างสมบูรณ์เพื่อให้คุณสามารถตั้งค่า "curlpaste" ของคุณเองด้วยโดเมนอื่น ๆ เช่นเซิร์ฟเวอร์วางส่วนตัว

curl --data-binary @your-file-here.txt https://curlpaste.com

หากคุณเยี่ยมชมเว็บไซต์นอกจากนี้ยังมีเว็บอินเตอร์เฟสที่มีตัวเลือกอื่น ๆ เช่นอ่านครั้งเดียวและลบ


curlpaste.comดูเหมือนว่าจะลง
Davide Icardi

2

นี่คือบริการอื่นที่ดูเหมือนจะให้สิ่งนี้: https://ctrlv.link/

เพิ่มรหัสในไฟล์input.txtและเรียกใช้คำสั่งนี้จากหน้าต่างเทอร์มินัล:

$ curl --form "expiration=0" --form "code_type=nohighlight" \
     --form "content=<input.txt" https://ctrlv.link/insert.php

ตัวอย่างที่มีรหัส C / C ++ (test.cpp):

$ curl --form "expiration=0" --form "code_type=cpp" \
     --form "content=<test.cpp" https://ctrlv.link/insert.php`

1

ฉันเพิ่งสร้างเครื่องมือบรรทัดคำสั่งหนึ่งคำสั่งสำหรับ pastebin https://notepad.pw/ฉันใช้บ่อย

การวางไฟล์ของคุณนั้นง่ายมาก

npw -lo filename linkpath

ดังนั้นโดยพื้นฐานแล้วมันจะวางเนื้อหาไปที่https://notepad.pw/

การlตั้งค่าสถานะนี้ใช้สำหรับการอัปเดตสดเช่นถ้ามีคนอื่นกำลังดูหน้าเพจนั้นจะอัปเดตโดยไม่ต้องโหลดซ้ำ

การตั้งค่าสถานะ 'o' สำหรับเขียนทับหากคุณไม่ได้ใช้เนื้อหาจะถูกผนวกเข้ากับที่มีอยู่

คุณสามารถติดตั้งเครื่องมือผ่านทาง pip

ใช้คำสั่ง

pip install npw

นี่คือหน้า GitHub


0

Anypaste

ข้อจำกัดความรับผิดชอบ: นี่คือโครงการของฉันเอง

ปัจจุบันยาสีฟันรองรับบริการคล้าย ๆ กับPastebin (โดยเฉพาะHastebinและix.io ) บางสิ่งบางอย่างที่คุณสามารถท่อหรืออย่างชัดเจนรายการแฟ้มsome_command | anypaste anypaste my_code.cการอัปโหลดสื่อได้รับการสนับสนุนในไซต์เช่น Imgur และ Gfycat ยาสีฟันจะตรวจจับชนิดไฟล์โดยอัตโนมัติเพื่อกำหนดตำแหน่งที่จะอัปโหลดอินพุต

วิธีที่เร็วที่สุดในการติดตั้งคือการดาวน์โหลดโปรแกรมที่เรียกใช้งานได้ (มันเป็นสคริปต์เชลล์ตัวใหญ่):

sudo curl -Lo /usr/local/bin/anypaste https://anypaste.xyz/sh


0

Pastebins จำนวนมากไม่ต้องการเครื่องมือพิเศษใด ๆ Curl หรือ wget จะทำ

https://paste.c-net.org/เป็นหนึ่งในตัวอย่างดังกล่าว

นี่เป็นตัวอย่างข้อมูลจาก "คู่มือ":

อัปโหลดข้อความโดยใช้ curl:

$ curl -s - ข้อมูล 'Hello World!' ' http://paste.c-net.org/ '

อัปโหลดข้อความโดยใช้ wget:

$ wget --quiet -O- --post-data = 'Hello World!' ' http://paste.c-net.org/ '

อัปโหลดไฟล์โดยใช้ curl:

$ curl --upload-file '/ tmp / file' ' https://paste.c-net.org/ '

อัปโหลดไฟล์โดยใช้ wget:

$ wget --quiet -O- --post-file = '/ tmp / file' ' http://paste.c-net.org/ '

อัปโหลดผลลัพธ์ของคำสั่งหรือสคริปต์โดยใช้ curl:

$ ls / | curl --upload-file ' http://paste.c-net.org/ '

$ ./bin/hello_world | curl --upload-file - ' http://paste.c-net.org/ '

คุณยังสามารถส่งข้อมูลไปยัง netcat

$ ls / | nc paste.c-net.org 9999

ซึ่งแตกต่างจาก termbin นั้น paste.c-net.org จะไม่หมดเวลาหากสคริปต์ของคุณใช้เวลามากกว่า 5 วินาทีเพื่อสร้างผลลัพธ์

$ {sleep 10; ls /; } | nc termbin.com 9999

$ {sleep 10; ls /; } | nc paste.c-net.org 9999

https://paste.c-net.org/ExampleOne

หน้านี้ยังมีฟังก์ชันทุบตี premade สำหรับไฟล์. bashrc ของคุณ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.