Hochladen einer Datei in einen Kern mit der bash
Ich in der Regel fügen Sie Fehler-Berichte und Protokolle auf Gist auf Github, um exchange-Programmierung relevante debug-Informationen. Gist nicht haben eine Taste, um eine Datei hochzuladen. Also manchmal ist es nicht so bequem kopieren und fügen Sie Ihre großen errorreports in Gist textarea für die Eingabe.
Gibt es eine Möglichkeit zum hochladen einer Datei von der Kommandozeile in einen neuen Kern in Ihrer Gist-Konto?
schafft auch eine temporäre git-repository für die upload-Datei helfen würde, würde ich den Vorgang automatisieren, in einem Skript.
Am Ende würde ich gerne automatisieren posting debug-Informationen zu meiner Programmier-Projekt auf github mit einem bash-Skript
- Nicht eine Frage der Programmierung, es gibt auch eine Schaltfläche, die sagt "Datei hinzufügen" auf der Seite, die Sie verlinken.
- Dies ist eine Frage der Programmierung, da gist ist die größte Plattform für Programmierer. außerdem: gibt es eine "Datei Hinzufügen" - button aber nicht, dass Sie eine Datei hochladen, es öffnet sich ein weiteres Textfeld Einfügen eine andere Datei
- Gist ist nicht die größte Plattform für Programmierer, es ist ein feature von github, das ist die Plattform. Klar, Sie haben nicht gelesen, der Unterschied zwischen dem, was ein github-repository ist und was für ein Kern ist, ist dies in der Hilfe-Dokumentation. 'Datei hinzufügen' erhalten Sie einen weiteren Eingang auf einfügen Datei Inhalt in.
- Ich verdeutlichte der Zweck meiner Frage, bitte überdenken Sie Ihre Stimmen
- Verwandte: Wie kann man Bilder hochladen, um einen gist?
- können Sie nicht verwenden pastebinit zu laden, gist? bugs.launchpad.net/pastebinit/+bug/268287
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier ist eine Lösung, die funktioniert für mich auf der Bash/Dash zu erstellen anonyme gist (sehr wahrscheinlich nicht bullet-proof):
Wenn Sie müssen zum erstellen eines gist im Zusammenhang mit Ihrem github-account, (für basic authentication) ersetzen Sie die Letzte Zeile durch:
Für die erweiterte Authentifizierung Regelungen finden https://developer.github.com/v3/#authentication
%
Charakter, es scheint zu brechen an diesem Punkt: ich habe versucht, laden Sie eine Datei mit dieser:UNIX_TIMESTAMP=$(date +%s%3N --date='TZ="UTC+2" '"$TIME")
%
könnte eine Besondere Bedeutung haben. Ich weiß nicht, ob ich die Zeit haben, zu untersuchen. Informieren Sie mich, wenn Sie mehr Ideen haben !\n
wird ein Zeilenumbruch in der gist hochgeladen, ähnliche Probleme für Literale\t
und\"
. Auch Befehle, die sich über mehrere Zeilen mit einem nachgestellten umgekehrten Schrägstrich\
sind nicht richtg. Und Skripte, die auch die gleichenEOF
heredoc-terminator sind nur teilweise hochgeladen.Sehen https://github.com/defunkt/gist
Es ist ein Ruby-Skript, die verwendet werden können von der Kommandozeile aus.
apt install gist
gibt die gem. Ich bin mir sicher, dass Sie installieren können, mit ruby, wenn Sie bevorzugen. funktioniert wie ein Juwel 🙂Sollten Sie in der Lage sein erstellen Sie einen neuen Kern, mit dem GitHub-API für das erstellen eines Gist:
Finden Sie verschiedene Skripts, die diese API nutzen, wie:
curl
- BefehlSogar auf der GitHub-editor Atom.io hat eine gist-it-Funktion.
Aufbauend auf die Antwort von Sylvain Leroux, können wir ersetzen die Bereinigung und json-Gebäude Schritte, die durch die Nutzung der jq Kommandozeilen-tool:
$ jq -Rs '{"description": "some description", "public": true, "files": {"'$FNAME'": {"content": .}}}' $FNAME | curl -X POST -d @- "https://api.github.com/gists"
Oder mit Authentifizierung:
$ jq -Rs '{"description": "some description", "public": true, "files": {"'$FNAME'": {"content": .}}}' $FNAME | curl -u "${GITHUB_USERNAME}" -X POST -d @- "https://api.github.com/gists"
Hier ist ein Python-Skript, das gleiche zu tun. Es wird aktiv weiterentwickelt von mir. Die README ist ziemlich einfach in der Anwendung details.
Einige Beispiele-
Eine Liste von Gist
gifc get 5
Erstellen eines gist
gifc create create.md -d "How to create a gist from cli" -i nano
gifc create create.md -d "How to create a gist from cli" -m '''If you want to create a gist from an existing file then you do the following- `gifc create create.md -d "How to create a gist from cli" -f file.md`'''
gifc create create.md -d "How to create a gist from cli" -f file.md
Update eine wesentliche
Bearbeiten Sie alle (oder einige) Dateien iterativ
gifc update ffd2f4a482684f56bf33c8726cc6ae63 -i vi
Sie können die gist-id aus der
get
Methode aus früherenBeschreibung ändern
gifc update ffd2f4a482684f56bf33c8726cc6ae63 -cd "New description"
Sie können die gist-id aus der
get
Methode aus früherenBearbeiten Inhalt einer Datei interaktiv in einem editor wie nano, vim oder gedit
gifc update ffd2f4a482684f56bf33c8726cc6ae63 -f file_to_update.md
gifc update ffd2f4a482684f56bf33c8726cc6ae63 -f file_to_update.md -cd "New description"
Datei(en) löschen aus einem Kern
gifc remove ffd2f4a482684f56bf33c8726cc6ae63 -r file1.md script.py readme.txt
Sie können die gist-id aus der
get
Methode aus früherenLöschen der gesamten gist
gifc delete ffd2f4a482684f56bf33c8726cc6ae63
Sie können die gist-id aus der
get
Methode aus früherenRouter mit eingeschränkten busybox ash Schalen habe ich diese shell-Skript, post-und patch-gister. Verwendung:
$ pgist my_file_to_post_or_patch_to_gist.extension
Keine Notwendigkeit zu erinnern, lange gist-ID ist. Diese gister wird codiert, um automatisch lookup den entsprechenden gist-ID. Einschränkungen sind:
Installation Beispiel:
curl -O https://gist.githubusercontent.com/ProBackup-nl/3971a45b21749cfff6c0069d3dad1dde/raw/pgist.sh && chmod 755 pgist.sh && mv pgist.sh /opt/usr/sbin/pgist
Abhängigkeiten
jq
sed
awk
curl
undca-certificates
so erstellen Sie ein gültiges Zertifikat-Kette statt