Chtěli jste někdy být upozorněni, když byl ukončen dlouho běžící proces / příkaz, a to nejen na ploše, ale také na telefonu? Noti to dokáže.
note je nástroj příkazového řádku pro macOS, Linux a Microsoft Windows, který monitoruje proces/příkaz a po dokončení spouští upozornění na ploše nebo telefonu.
Podporovaná oznámení:
- Oznámení na ploše (bannery)
- řeč
- BearyChat
- Základní klíč
- Nejdůležitější
- Pushbullet
- Zatlačení
- Pushsafer
- Jediné stisknutí
- Uvolněný
- telegram
- Zulip
- Twilio
Všechna tato podporovaná oznámení fungují v systémech macOS, Linux a Windows.
Stojí za zmínku, že pokud chcete pouze dostávat oznámení na ploše, když v Linuxu skončí dlouho spuštěný příkaz, stačí spustit command; notify-send Done
(např. sleep 3; notify-send Done
).
Ve výchozím nastavení Noti zobrazuje pouze text „Hotovo!“ při dokončení dlouhotrvajícího úkolu lze toto prodloužit. Můžete zadat název oznámení (výchozí je název nástroje), zadat oznámení (výchozí je „Hotovo!“; Čtení ze standardního nastavení s -
) a v oznámení zobrazit čas provedení.
Můžete použít noti na začátku příkazu, například:
noti sleep 3
A po příkazu, např.:
sleep 3; noti
Noti můžete použít i poté, co byl příkaz již spuštěn, a to buď získáním PID procesu a poté použitím následujícího příkazu:
noti --pwatch PID
Nebo stisknutím Ctrl + z
po zahájení procesu jej dočasně pozastavte a poté pokračujte s:
fg; noti
Další informace o Noti, včetně nastavení notifikací Noti s různými službami, proměnných prostředí Noti atd., naleznete na této stránce. Při testování jsem si však všiml, že tato stránka je poněkud zastaralá. Například Slack již neumožňuje vytváření starších tokenů testerů. Můžete se tedy také podívat na man stránku Noti odtud a noti.yaml man odtud.
Čtěte dále a zjistěte, jak nainstalovat a nakonfigurovat Noti, včetně úplného průvodce, jak nastavit Noti, aby upozorňovalo na vaše mobilní zařízení prostřednictvím telegramu a Slacku, když skončí dlouhotrvající příkaz.
Mohlo by se vám také líbit toto:Jak opakovat příkaz každých X sekund na Linuxu
Poznámka. nainstalovat a nakonfigurovat
Instalační příručka Noti propojená přes tlačítko výše obsahuje několik možností instalace tohoto nástroje. Pokud chcete získat binární soubor přímo, přejděte na stránku publikování nástroje GitHub.
Nejjednodušší způsob, jak nainstalovat Noti na Linux, je stáhnout si binární soubor ze stránky vydání, rozbalit archiv a poté nainstalovat noti
binární na /usr/local/bin
pomocí (za předpokladu, že jste rozbalili binární archiv Noti ve své domovské složce a otevřeli terminál ve svém domovském adresáři):
sudo install noti*linux-amd64/noti /usr/local/bin
Ve výchozím nastavení používá Noti oznámení na ploše (bannery). Níže vám ukážu, jak nakonfigurovat Noti, aby zasílal upozornění po dokončení dlouhého běžícího procesu na vašem mobilním zařízení prostřednictvím Slack a Telegram, protože to je to, co používám. Pokud ji chcete používat s jakoukoli jinou službou, budete si ji muset nakonfigurovat sami pomocí návodu (i když podle mého názoru poněkud neúplný a v některých případech zastaralý, např. již nemůžete vytvářet tokeny Slack a budete muset použít Slack App) odtud.
Mohlo by se vám také líbit toto:Bit je moderní Git CLI s interaktivní výzvou
Nakonfigurujte Noti tak, aby vás upozornilo na provedení dlouhého příkazu odesláním zprávy na telegram
Potřebujete telegram, aby vám Noti poslal telegramové zprávy, když byl proveden dlouhý příkaz chatId
a token
. Funguje to buď s telegramovým chatem, nebo s kanálem. V mých pokynech níže používáme telegramový kanál.
1. Vytvořte kanál telegramu.
První věc, kterou musíte udělat, je vytvořit kanál telegramu. Může mít libovolný název a popis.
2. Vytvořte robota Telegram a získejte přístupový token HTTP API.
Dále musíte použít otce bota (@botfather) k vytvoření robota a získání přístupového tokenu HTTP API.
Chcete-li to provést, zahajte chat s @botfather a zadejte /start
v chatu, abyste viděli dostupné příkazy atd. Nyní zadejte /newbot
vytvořte nového robota a postupujte podle pokynů (pro nového robota musíte nastavit jméno a uživatelské jméno). Až budete hotovi, @botfather zobrazí token pro přístup k HTTP API. Zkopírujte tento token, protože jej budeme později potřebovat.
3. Přidejte do svého kanálu robota Telegram vytvořeného v kroku 2 a získejte chatId
.
Nyní máme token, ale také potřebujeme získat chatId.
Přidejte robota, kterého jste vytvořili v kroku 2, do svého nového kanálu Telegram (přejděte na kanál a vyberte z možností Add users
a vyhledejte robota, kterého jste vytvořili).
Po přidání robota zadejte zprávu na svůj kanál Telegram. To je důležité a nezbytné pro chatId
.
Nyní můžete chatId
návštěvou následujícího odkazu, který je třeba upravit:
https://api.telegram.org/botXXX:YYYYY/getUpdates
Nahraďte XXX:YYYYY
s tokenem HTTP API vašeho robota, který jste obdrželi v kroku 2.
Tento odkaz zobrazuje řadu textů, pod nimiž naleznete následující:
chat":{"id":-100999999999}
ID odtud je vaše chatId
které musíte používat s Noti. To -
Znak na začátku čísla je součástí chatId
takže se ujistěte, že používáte i toto a ne pouze čísla.
4. Vytvořte konfigurační soubor Noti (pokud jste jej ještě nevytvořili) a přidejte Telegram.
Nyní, když známe telegram chatId
a HTTP API token
, vytvořte konfigurační soubor Noti s názvem noti.yaml
v ~/.config/noti/
Otevřete tento soubor pomocí textového editoru a vložte následující:
telegram:
token: THE_HTTP_API_TOKEN_GOT_UNDER_STEP_2
chatId: 'THE_CHAT_ID_GOT_UNDER_STEP_3'
Příklad (upraveno tak, aby nezahrnoval můj skutečný token
a chatId
):
telegram:
token: 1598888700:AEEijJJcsABpYR1LdJ4_Llkr1Vq48vxAUSg
chatId: '-10099999999999'
Otestujte, zda Noti odešle telegramovou zprávu, když byl proveden dlouhý příkaz, pomocí:
sleep 3; noti --telegram
Nebojte se, nemusíte přidávat parametr příkazového řádku –telegram pokaždé, když používáte Noti. Můžete exportovat NOTI_DEFAULT
se seznamem typů oznámení, které se mají spustit, např. B. Chcete-li používat oznámení bannerů na ploše a oznámení telegramů, museli byste exportovat NOTI_DEFAULT="banner telegram"
.
Přidat do export NOTI_DEFAULT="banner telegram"
na váš ~/.profile
Soubor, aby byla změna trvalá. Upravte to, samozřejmě NOTI_DEFAULT
Typy oznámení o tom, co chcete použít. Po provedení změn se odhlaste a znovu přihlaste. udělali ~/.profile
Soubor pro použití nových nastavení.
Také by vás mohlo zajímat:Jak najít soubory, které se změnily za posledních N dní nebo minut pomocí funkce find
Nakonfigurujte Noti tak, aby vás upozornilo na spuštění dlouhotrvajícího příkazu odesláním zprávy na Slacku
Stránka dokumentace Noti zmiňuje vytvoření tokenu OAuth pro testování a vývoj, ale to již Slack nepodporuje. Místo toho musíme vytvořit aplikaci Slack.
1. Přihlaste se do Slacku pomocí webového prohlížeče.
2. Vytvořte aplikaci Slack.
Přejděte na https://api.slack.com/apps/new a vytvořte novou aplikaci Slack s libovolným názvem.
3. Povolit příchozí webhooky.
Po vytvoření aplikace Slack budete přesměrováni na stránku nastavení vaší nové aplikace. Tímto Basic Information
vybrané v levém postranním panelu), rozbalte Add features and functionality
sekce a poté klikněte na Incoming Webhooks
. Zapněte přepínač vedle Activate Incoming Webhooks
.
4. Vytvořte příchozí webhook.
Ve spodní části Incoming Webhooks
Po straně klikněte na Add New Webhook to Workspace
a vyberte kanál nebo sebe (druhý pod Direct Messages
). Zde obdržíte oznámení. Zde jsem si vybral své uživatelské jméno.
[[Upravit]] Kroky k vytvoření aplikace Slack a příchozího webhooku jsou také popsány v dokumentaci rozhraní Slack API.
Po vytvoření příchozího webhooku budete přesměrováni na Incoming Webhooks
Strana. V dolní části této stránky byste měli vidět Webhook URL
. Zkopírujte tuto adresu URL.
5. Vytvořte konfigurační soubor Noti (pokud jste jej ještě nevytvořili) a přidejte do něj Slack.
Nyní, když máme adresu URL webhooku Slack, vytvořte konfigurační soubor noti s názvem noti.yaml
v ~/.config/noti/
Otevřete tento soubor pomocí textového editoru a vložte následující:
slack:
appurl: 'https://hooks.slack.com/services/xxx/yyy/zzz'
Nahraďte zde appurl
Hodnotu pomocí adresy URL webhooku Slack, kterou jste získali v kroku 4, a uložte soubor.
Pomocí:
vyzkoušejte, zda Noti odešle upozornění Slack, když byl spuštěn dlouho běžící příkazsleep 3; noti --slack
Zde je návod, jak vždy používat Slack k odesílání oznámení při psaní noti
(takže nemusíte zadávat noti --slack
pokaždé, když chcete být upozorněni na Slacku), můžete exportovat NOTI_DEFAULT
se seznamem typů oznámení, které se mají spustit, např. Chcete-li například používat oznámení bannerů na ploše a oznámení Slack, budete muset exportovat NOTI_DEFAULT="banner slack"
.
Přidat do export NOTI_DEFAULT="banner slack"
na váš ~/.profile
Soubor, aby byla změna trvalá. Upravte to, samozřejmě NOTI_DEFAULT
Typy oznámení o tom, co chcete použít. Po provedení změn se odhlaste a znovu přihlaste. udělali ~/.profile
Soubor pro použití nových nastavení.
Mohlo by se vám také líbit toto:Historie Bash:Zde je návod, jak zobrazit časové razítko (datum / čas), kdy byl každý příkaz proveden