Autor Zpráva
Juraj
Profil *
Po dlhom googlení skúšam požiadať o pomoc, lebo fakt, iba sa učím Batch a neviem, čo ďalej. Robím na programe, ktorý by mal byť niečo ako personálny asistent zjednoduchčujúci rozkazy a urýchlujúci prácu s cmd.exe a inými programamy. Jedna z jeho funkcionalít by malo byť rýchle hladanie/spúšťanie url na wikipédii priamym prechodom po zadaní klúčového slova.

:what is %''%a
start chrome.exe http://en.wikipedia.org/wiki/%''%a
goto start
E.g.: ':what is Adam by mal byť doplnený koncový command a následne cmd.exe by mal otvoriť chrome.exe na url: http://en.wikipedia.org/wiki/Adam

Vopred ďakujem za každú radu


Mohol bz mi to niekto opraviť? Musí tam byť chyba


V podstate prvý riadok by mi mal dosadzovať premennú v druhom.
okolojsoucí
Profil
Nevyplatí se trochu něco jiného? Dejme tomu C#?
Tady jsem ti napsal zdroják :)

using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Int32 volba = 0;
            String hledani = "";
            Console.WriteLine("=== Menu ===");
            string[] menu = new string[] {
                "Vyhledat na Wikipedii"
            };

            for (int i = 0; i < menu.Length; i++)
            {
                Console.WriteLine("{0} - {1}", i + 1, menu[i]);
            }
            Console.WriteLine("=== Menu ===");
        volba:
            Console.ForegroundColor = ConsoleColor.DarkGreen;
            Console.Write("Vaše volba: ");
            Console.ResetColor();
            try
            {
                volba = Convert.ToInt32(Console.ReadLine());
            }
            catch (FormatException)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("Chyba: Musíte zadat číslo z menu");
                Console.ResetColor();
                goto volba;
            }
            catch (OverflowException)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("Chyba: Jedná se o neplatnou hodnotu");
                Console.ResetColor();
                goto volba;
            }
            catch (Exception) {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("Chyba: Opakujte zadání");
                Console.ResetColor();
                goto volba;
            }
            if (volba > menu.Length)
            {
                Console.ForegroundColor = ConsoleColor.Red;
                Console.WriteLine("Chyba: Jedná se o neplatnou hodnotu");
                Console.ResetColor();
                goto volba;
            }
            switch (volba) { 
                case 1:
                    // Wikipedia
            vyraz:
                    Console.Write("Zadejte výraz který chcete hledáte: ");
                    try
                    {
                        hledani = Console.ReadLine();
                    }
                    catch (Exception) {
                        Console.ForegroundColor = ConsoleColor.Red;
                        Console.WriteLine("Chyba: Nastala obecná chyba. Zadejte výraz znovu.");
                        Console.ResetColor();
                        goto vyraz;
                    }
                    Process.Start(@"chrome.exe", "--url " + new Uri("http://en.wikipedia.org/wiki/"+hledani).AbsoluteUri);
                    break;
            }
            goto volba;
        }
    }
}
Kubo2
Profil
okolojsoucí:
Tady jsem ti napsal zdroják :)
Nestačilo by namiesto riadkov 39, 46 a 52 napísať na riadok 79 blok finally?

finally
{
  goto volba;
}
juriad
Profil
okolojsoucí:
Sorry, ale instalovat .Net a shánět Visual Studio kvůli prkotině do příkazové řádky?

Juraj:
S příkazovou řádkou ti neporadím; moc se nekamarádí s mým Linuxem.
Pořádně nechápu tvůj úmysl:
- Skript vypíše "What is " a ty doplníš jedno slovo, dáš enter a on otevře prohlížeč s otevřenou wikipedií na zadané stránce?
- Nebo ty napíšeš "What is" a jedno slovo, dáš enter a prohlížeč zobrazí stránku?

Mimochodem víš o tom, že existují doplňky do prohlížečů, které toto umí?
Mě stačí zmáčknout klávesu „t“, pak napat „wen Adam“ a otevře mi stránku Adam na anglické wiki. A dokonce i s našeptávačem stránek.
abc
Profil
Mimochodem víš o tom, že existují doplňky do prohlížečů, které toto umí?
Mě stačí zmáčknout klávesu „t“, pak napat „wen Adam“ a otevře mi stránku Adam na anglické wiki. A dokonce i s našeptávačem stránek.
Opera toto umí jednoduše napsáním do adresního řádku.
Je taky možné vytvářet vlastní vyhedávače.
juriad
Profil
abc:
Ano, klávesa „t“ u mě otevře něco jako adresní řádku; pak první slovo se chápe jako název vyhledávače (pokud takový existuje) a následující slova tvoří hledaný výraz. Už si ani nepamatuji, jestli u nevytuněného Firefoxu lze hledat konkrétním vyhledávačem z adresního řádku.
Kubo2
Profil
juriad:
Sorry, ale instalovat .Net a shánět Visual Studio kvůli prkotině do příkazové řádky?
.NET pokiaľ viem býva na novších Windowsoch už defaultne zahrnutý. Visual Studio mám pre študijné účely (v podstate vlastne iba Visual C# Express), takže ak by mal Juraj záujem, môžem mu to za pár minút skopírovať a skompilovať.

Mimochodem víš o tom, že existují doplňky do prohlížečů, které toto umí?
Myslím, že Juraj to myslel iba ako príklad (avšak to sa môžeme dozvedieť iba od neho).
juriad
Profil
Pro skriptování v rámci systému doporučuji jiné jazyky:
- Bash (skrze Cygwin); Bash je široce používaný pod Linuxem
- Python; je to takový pěkný čistý jazyk
- PHP; ano umí i CLI; pokud ho umíš, stačí se jen doučit pár věcí
Kubo2
Profil
Juraj:
Pripomeniem, že v chrome stačí do adresy napísať define:slovo + Enter a presmeruje ťa na Google, ktorý vypíše definíciu slova (väčšinou z Wikipédie) a hneď prvý odkaz pod touto definíciou je práve na Wikipédiu.

Vaše odpověď

Mohlo by se hodit

Zvažte, zda se neobrátit na specializované fórum, toto se zabývá především webovou problematikou.

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0