Vidíte, rozhodol som sa to urobiť, pretože som musel použiť gumu, ktorú som mal v zásobníku hnijúcu, aby som zdieľal skript, ktorý nie je nič moc, má iba 2 riadky a bude vyžadovať heslo root alebo sudoers.
SKRIPT: aktualizácia
#! / bin / bash sudo aptitude update sudo aptitude úplná aktualizácia
A voila, nebudú zahltení toľkými riadkami komplikovaného programovania (sarkazmus).
Akonáhle ho uložíme, dá mu povolenie na vykonávanie, vstúpime do nášho prehliadača súborov ako root, skopírujeme a prilepíme skript, aby mal niečo také:
Teraz zavrieme, otvoríme terminál a napíšeme „update“ (samozrejme bez úvodzoviek)
Ako uvidíte na nasledujúcom obrázku, úložiská boli aktualizované:
píšeme Y akceptovať, čo sa bude inštalovať a / alebo aktualizovať, a dúfajme, že sa aktualizácie stiahnu a nainštalujú a terminál bude vyzerať takto:
A teraz ste aktualizovali svoj systém jediným príkazom.
Kde je scenár?
Nachádza sa za prvými 3 riadkami príspevku.
No tento príspevok naozaj nechápem.
Stále ma zaujíma, že niektorí používatelia radšej skomplikujú skripty a povolenia, keď môžu problém vyriešiť pomocou jednoduchého aliasu. Tento príspevok je v skutočnosti veľmi podobný príspevku, ktorý bol práve zverejnený o „zjednodušení príkazov“, a ku ktorému som, mimochodom, vložil komentár s aliasom, ktorý je ešte úplnejší ako ten, ktorý je zverejnený v tomto príspevku samotnom. . Chcieť prispievať do komunity je každopádne ušľachtilé, ale keď sú príspevky také podobné, zdá sa, že to nepomôže.
Keď som bol Debianite, „komplikoval“ som si to:
http://paste.desdelinux.net/4680
Aliasy sú pre potrubia ands ~ _ ~, ale to je to, čo GNU / Linux má rád mnoho spôsobov, ako robiť veci, len musíte brať do úvahy oprávnenie súborov.
Chápem, že nie každý z nás je dobrý v správe OS (Windows, GNU / Linux atď.), Ale aspoň sa o nich musíte trochu naučiť (ten, ktorý používate).
Ako povedal Hugo, „Aktualizácia Debianu a derivátov jediným príkazom [Skript]“ a „Zjednodušenie príkazov“, aspoň pre mňa, nedávajú zmysel, ak sa to vyrieši úpravou súboru .bashrc a pridaním:
alias update = 'aktualizácia sudo aptitude -y && sudo aptitude -y safe-upgrade'
Na zdravie ... ..
PS: Musíte sa zahltiť kódom, keď to naozaj potrebujete.
Priznávam, že máte pravdu, ale aspoň pre mňa je rovnako jednoduché robiť scenár alebo aliasy.
Tu vstupuje do hry rozdiel medzi tým, kto robí veci dobre, a tým, čo robí zle.
Ak práve začínate a stále ste nepoznali príkaz ALIAS, vitajte v GNU / Linux a užite si (špinavý) hack.
Vo vašom prípade je to iné: nesprávnym použitím štandardov používania systému GNU / Linux sa preukážete ako úplná ignorancia a nedbanlivosť. Vo vašom prípade čím ďalej od konzoly, tým lepšie.
Vyskúšať:
pretože "alias update = 'aktualizácia sudo aptitude -y && sudo aptitude -y safe-upgrade'"
Nedalo mi to a teoreticky by to malo fungovať.
A ak odstránite skript s rovnakým názvom a dokonca vyskúšate iný alias.
Ak zreťazenie dvoch príkazov v jednom riadku nefunguje, je to preto, že sa vo vašom systéme niečo pokazilo, pretože podmienené vykonávanie je štandardná funkcia bash.
Je možné, že vo svojom počítači kombinujete balíčky z rôznych verzií Debianu a / alebo derivátov? Keby som bol na tvojom mieste, preinštaloval by som bash alebo dokonca celý systém len kvôli tomuto symptómu, ktorý popisuješ, pretože som už nemohol uveriť, že sa systém bude správať stabilne.
pravda je taká, že mám niekoľko repozitárov launchpadu a linuxmint, ale nemyslím si, že je to také náročné na preinštalovanie celého systému.
Tým sa veci trochu vyjasnia. Je zrejmé, že máme rôzne kritériá týkajúce sa dôležitosti stability systému. 😉
Koniec koncov, je to váš systém; máte plné právo to takto používať, aj keď úprimne povedané miešate Debian s Ubuntu a Linux Mint repos ... no, pre skutočný Debianite to je ako svätokrádež. Navyše, veľa Debianitov sa mračí, aj keď používa apt-pinning.
Podľa môjho názoru, aby ste mali túto promiskuitu úložiska, bolo by lepšie použiť niečo s Debian Cut, Sid, nejakým derivátom Sida, alebo možno niečo iné ako Ubuntu, Fedora, Arch, LFS atď.
Môže byť oveľa jednoduchšie dať všetko do jedného riadku
sudo aptitude update && sudo aptitude dist-upgrade
pravda je jednorazový proces a teraz na to musím napísať iba „aktualizácia“ a nie každý riadok, ktorý práve zadáte.
No, je tu niečo, čomu nerozumiem Desde linux Je to:
nás
Čo je <° Linux?
<° Linux (aka DesdeLinux) je stránka venovaná témam súvisiacim so slobodným softvérom a technológiami. Naším cieľom nie je nič iné, ako poskytnúť všetkým používateľom, ktorí začínajú vo svete GNU/Linux, miesto, kde môžu čo najjednoduchším spôsobom získavať nové poznatky.
Naše záujmy:
Zdieľajte a získavajte vedomosti s kýmkoľvek.
Diskusia o akejkoľvek téme, pokiaľ sa týka GNU / Linuxu, softvéru a slobodných technológií.
Vytvorte komunitný priestor pre Pomoc a podporu.
Vytvorte komunitu používateľov, s ktorými môžete zdieľať skúsenosti.
Prečo teda vždy, keď niekto niečo zdieľa, kritika preskočí?
Je to pravdepodobne preto, že väčšina používateľov systému Linux má rada efektívne riešenia a ak vidia niečo, o čom si myslia, že by sa dali vylepšiť, hovoria to. Zatiaľ a podľa toho, čo poznám tvorcov tohto blogu, snažia sa rešpektovať kritériá všetkých používateľov; Inými slovami, niekto má rovnaké právo na uverejnenie článku ako iní používatelia, aby ho mohli komentovať.
Pozrime sa, kritika nemusí byť nevyhnutne zlá vec, pretože môže veľmi obohatiť články, ak sa urobí konštruktívnym spôsobom. Je zrejmé, že deštruktívne recenzie (tj. Tie, ktoré nie sú argumentačné, falošné alebo urážlivé) sú škodlivé, ale zatiaľ si nepamätám, že by som tu videl veľa kritiky tohto typu.
Myslím si, že to, čo nás môže najviac trápiť, je úplné ignorovanie správneho používania systému autorom príspevku a tiež chválenie sa svojím konaním:
„Priznávam, že máš pravdu, ale aspoň pre mňa je vytvorenie scenára alebo aliasing rovnako ľahké.“
Ak viete, že robíte niečo zle, keď máte možnosť to urobiť správne, bez ďalších nákladov - je to viac s ďalšími výhodami - ale trváte na tom, aby ste to robili zle, je to takto:
1. Ste vzdorovitý malý chlapec bez príčiny.
2. si idiot.
Problémov nie je oveľa viac, iba písomne napíšem to, čo si myslí každý užívateľ, ktorý sa snaží naučiť najlepšie postupy GNU / Linux a využívať ho najefektívnejším spôsobom.
Na vytvorenie „škaredých hackov“ je potrebné preukázať spôsobilosť skôr, ako budete jednoducho špinaví.
hmm možno je to číslo 2, pretože som ten bod nedostal.
XD
Nemôžete alias 2 príkazy, najbližšie bolo to, čo som už mal vo svojom aliasi, čo by bola aktualizácia && upgrade, aby som robil to, čo robí aktualizačný skript. Zatiaľ nevidím, kde je problém. Alebo som príliš lenivý na to, aby som písal update && upgrade.
mimochodom moje aliasy, ktoré som už mal predtým, ako som robil článok.
alias rm = 'rm -i'
alias cp = 'cp -i'
alias mv = 'mv -i'
alias upgrade = 'aptitude full-upgrade'
alias update = 'aktualizácia aptitude'
alias install = 'aptitude install'
alias remove = 'aptitude remove'
alias clean = 'aptitude clean'
Toto sú moje aliasy pre domáci server Ubuntu Server 12.04 LTS:
$ cat ~ / .bash_aliases
...
###################################
# Špecifické aliasy pre Ubuntu / Debian
# ——————————-
alias UpdateSystem = 'aktualizácia sudo aptitude && sudo aptitude safe-upgrade && sudo aptitude full-upgrade'
alias Odstrániť = 'sudo aptitude purge'
alias SearchLocal = 'dpkg -l | grep -i'
alias Search = 'vyhľadávanie aptitude'
alias Install = 'sudo aptitude install'
alias Show = 'ukážka aptitude'
alias Clean = 'bleachbit && gksudo bleachbit && sudo apt-get autoremove && sudo apt-get autoclean && sudo deborphan | xargs sudo apt-get -y remove –purge && sudo aptitude clean && sudo aptitude autoclean && sudo deborphan | xargs sudo apt-get -y remove –purge '
alias Cleancli = 'bleachbit -d deepscan.tmp system.desktop_entry system.localizations system.rotated_logs system.tmp && sudo bleachbit -d deepscan.tmp system.desktop_entry system.localizations system.rotated_logs system.tmp && sudo apt-get autoremove && sudo apt-get autoclean && sudo deborphan | xargs sudo apt-get -yr \
emove –purge && sudo aptitude clean && sudo aptitude autoclean && sudo deborphan | xargs sudo apt-get -y remove –purge '
Ak zadám viac ako 2 príkazy, nepracujú mi :(, alebo budú fungovať v Ubuntu? (Nemôže to byť ten istý upravený súbor, však?).
Rovnako ako všetci sme hargani, najmä správcovia systému a programátori, využívame, zneužívame a opakovane zneužívame aliasy a hacky, aby sme museli stlačiť čo najmenej kláves; ideál každého správcu alebo programátora je dostať sa do stavu, keď bude mať jednopísmenový alias, ktorý aktualizuje systém a vyčistí dom (kuchár, ja varím).
Vážne, tu ide o automatizáciu nadbytočných úloh najefektívnejším, najpraktickejším a najpohodlnejším spôsobom.
Moja politika pre aliasy je nasledovná:
1, pretože mám * veľa * aliasov, ktoré zdieľam v rovnakých ~ / .bash_aliases naprieč rôznymi systémami, takmer vždy začínam svoje aliasy veľkým písmenom, čo mi tiež bráni v konečnom dôsledku _stepping_ na nejakom systéme.
2. Kvôli použitému množstvu aliasov by mi dobrý alias nemal prinútiť stlačiť viac ako 4 klávesy, z ktorých 5 je zvyčajne štvrtý kláves TAB.
Takto mi stačí napísať prvé dve alebo tri písmená aliasu -> TAB -> ENTER.
3. Vďaka dobre definovaným aliasom môžete vytvárať zložité príkazy alebo automatizovať zložité úlohy.
$ Hore [TAB] && Cleanc [TAB]
Osea
# UpdateSystem && Cleancli
Aktualizujte a vyčistite systém. Pretože mám vždy spustenú nejakú inštanciu tmux, odpojím terminál, odpojím reláciu ssh a nechám server pracovať sám.
Na záver nezabudnite, že príkazy pre aliasy nemožno vnoriť, to znamená, že nemôžete použiť alias v rámci iného aliasu.
V určitom okamihu som mal definovaný alias UpdateFull, ktorý by aktualizoval systém a potom aktivoval čistiace prostriedky, ale prestal som ho používať, pretože aktualizácia a čistenie systémov nie sú triviálna úloha - aj keď nám vývojári uľahčujú život - a radšej by som mal viac kontroly nad týmito akciami.
Niektoré z tých prezývok sú veľmi zaujímavé, hehe. Pozrite sa na tento, ktorý som práve pripravil hrať sa s regulárnymi výrazmi, aby som vyriešil malý problém s uloženými webovými stránkami desde Linux na flash, ktorý sa potom nedá otvoriť zo systému Windows kvôli zvláštnym znakom:
alias fixnames='sudo find . -depth -regextype posix-extended -regex '\''.*(\s+|:+|\\+|>+|+|<+|"+|\*+|\?+|\|+)/_/g'\'' "{}" \;'
Mimochodom, prepáčte mi komentáre z Windows, vymazal som svoju linuxovú partíciu, aby sa vytvoril priestor pre niektoré hry 😉
No, prepáčte, ale v prvom rade som reagoval na msx (čo nebolo veľmi jasné kvôli hranici úrovní vnorenia komentárov), a za druhé, zjavne blog zjedol časť môjho aliasu (zdá sa, že sa vám nepáčia) regex), tak som to vložil do pasty: http://paste.desdelinux.net/4685
Vynikajúci alias @ Hugo!
Zamiloval som sa do regulárnych výrazov, keď som objavil Perl (spolu sú neprekonateľní!). Škoda, že sú takí záhadní, že 20 minút potom, čo som ich vytvoril a overil, že fungujú, som zabudol, čo robili, a musím ich začať rozmotávať. krok za krokom! xD
Tam skopírujem ER, ktorú ste vložili, aby ste to otestovali, ak ich máte viac užitočných, vitajte v príspevku so všetkými 😉
Možno sa vám zdá tento skript alebo to, čo urobili v adresári / bin, správny (pozrite si tému Zjednodušenie príkazov).
Je to konštruktívna kritika, ktorá zdôrazňuje túto chybu, aby budúci používatelia GNU / Linux o takúto hlúposť nezakopli (bez ohľadu na akúkoľvek osobu).
V tomto prípade je správne upraviť súbor .bashrc a zaviesť riadky, ktoré považujete za vhodné.
Na zdravie ... ..
~ / .bash_aliases
Tento súbor zjavne neposkytujú všetky distribúcie (niečo, čo ma neprestalo priťahovať). V takom prípade by sa to dalo ľahko opraviť vložením niečoho podobného do súboru .bashrc
if [ ! -f ~/.bash_aliases ] ; then
{
echo "HISTIZE=5000"
echo "HISTCONTROL=ignoreboth"
} > ~/.bash_aliases
fi
if [ -f ~/.bash_aliases ] ; then
source ~/.bash_aliases
fi
Prepáčte, je to HISTSIZE. Mimochodom, histsize je definovať počet príkazov, ktoré sa majú v histórii zachovať, a HISTCONTROL = ignoreboth je taký, že opakované príkazy a tie, ktoré začínajú medzerou, sa v histórii neuložia. Zistil som, že obe sú veľmi užitočné, spolu s HISTIGNORE, možnosťou, ktorú som tiež vložil do svojich .bash_aliases
Ak si vezmem ako príklad Debian, uvidíte, že existuje iba .bashrc, ale ak ste trochu zvedaví a prečítate si riadky, uvidíte sekciu:
(a) # ďalších aliasov a
(b) # definície aliasov. Možno budete chcieť vložiť všetky svoje doplnky do samostatného súboru ako ~ / .bash_aliases, namiesto toho, aby ste ich sem pridali priamo. Pozrite si / usr / share / doc / bash-doc / examples v balíku bash-doc.
if [-f ~ / .bash_aliases]; potom
. ~ / .bash_aliases
fi
A samozrejme za to, $ vim ~ / .bash_aliases (pretože si ho musíte vytvoriť). Enter, alias XX = 'XXXXXX', uložte a ukončite súbor.
Teraz s ArchLinuxom sa ukazuje, že váš .bashrc je prakticky prázdny. A ak .bashrc spĺňa túto funkciu (alias), nevidím potrebu vytvárať .bash_aliases. Musíte si ho však nechať objednať.
Na zdravie ... ..
PS: Berte do úvahy, že moje aliasy nie sú v úlohe také zvláštne.
Zdravím MSX, Hugo.
Ahoj @ Berbellon,
Osobne by som chcel, aby bol súbor ~ / .bashrc od spoločnosti Arch silnejší, to znamená s niekoľkými nastaveniami premenných prostredia, ktoré dennodenne používame, pretože bez ohľadu na to, koľko sa človek neustále učí o GNU / Linux a snaží sa osvetliť najtmavšie kúty vždy existujú nejaké korytnačky, ktoré nám uniknú (že ak, to prichádza s mnohými príkladmi systémových premenných, ale všetky absolútne komentované).
Teraz je Arch takmer zbavený ~ / .bashrc pochopiteľný, pretože distro je určené pre vývojárov, vedcov, správcov a všetkých, ktorí si ho chcú nakonfigurovať svojpomocne, podľa svojich predstáv a osobného použitia, a to tak, že sa dozvedia o systéme a prečítajú si, ako nakonfigurujte si ho - nie nadarmo Arch je - ak sa nemýlim - spolu so Slackom jedným z najčistejších distribúcií GNU / Linux v tom, že sa čo najmenej dotýka každého balíka, ktorý je súčasťou systému, napríklad webový server Apache s názvom httpd (skutočné meno aplikácie) a nainštaluje sa do / etc / httpd na rozdiel od Debianu, ktorý ho nazýva apache, a nainštaluje ho do / etc / apache2 s trochu ... osobnou konfiguráciou súborov.
A ak .bashrc spĺňa túto funkciu (alias), nevidím potrebu vytvárať .bash_aliases. Musíte to však mať organizované. ““
~ / .Bashrc túto funkciu v skutočnosti nespĺňa, pretože Arch Linux sa snaží podporiť osvedčené postupy pri používaní systému, preto sa na uloženie aliasov výslovne odporúča používať ~ / .bash_aliases.
Toto rozlíšenie pre definíciu aliasov - ~ / .bashrc vs ~ / .bash_aliases- je však čisto administratívne a je poskytované tak, aby správca systému mohol organizovať svoj systém modulárnym a čistým spôsobom, pretože súbor ~ sa dá dobre používať. /.bashrc na definovanie všetkých aliasov, ktoré používame.
Je pravda, že niekedy máte v aliase nejaké príkazy a že niekedy ich musíte robiť osobitne a inokedy spolu a ako mi už povedali vyššie, nemôžete alias príkaz, ktorý už máte, Alias vytvoriť nemôžete, aj keď je vnorený do iného, a mimochodom nemám pokazený systém a mám iba launchpad jdownloaderu a ten linuxmint debian edition som ho odstránil, pretože sa mi zdal redukčný.
je to vážne? a toto je skript, ktorý aktualizuje systém a reštartuje sa v jednom kroku
#! / Bin / bash
sudo Aktualizácia aptitude
plná aktualizácia sudo aptitude
sudo reboot
veci, ktoré sa robia neustále, si zvyčajne treba skriptovať, úplná aktualizácia nie je neustále, o to menej v debiane ...
Spravím to často. : str
Mali by ste vyskúšať Semplice (úžasne stabilný a krásny Debian Sid s Openbox + tint2), aptosid / Sidduction (Debian Sid takmer stabilný a veľmi nafúknutý), Arch (najlepšie RR distro vôbec), Gentoo / Sabayon alebo akékoľvek iné distro distribúcie.
Ak používate debian, vyskúšam Semplice, je modernejší ako Crunchbang (Debian Stable) a funguje vynikajúco.
Uvidím, ako a ak ma to presvedčí, môžem si ho nainštalovať do nového notebooku.
A nový príspevok? 😉
Ako často sa objavuje nová verzia debian?
Každé 2 roky cca. Ak pri testovaní používate stabilnú verziu, dalo by sa povedať, že sa jedná o Rolling Release, to znamená, že sa aktualizuje online takmer každý deň a nemusíte systém znova preinštalovať.
Hmm je pravdepodobné. Myslím, že druhýkrát predstierať, že som idiot, nie je také zlé.
XD
Uhh, do toho, kde je tá šampiónska koža !!! xD
Nech ti to skĺzne, starká!
Ako sysadmin skriptujem iba pre opakujúce sa a náročné úlohy, nezdá sa mi to ako prípad xD
No, hovorte mi divne, ale používanie aliasov na príkazy, ktoré používate, často funguje, ale na niečo, čo sa robí raz za rok? (Používam ubuntu lts, myslím tým viac) nedáva zmysel.
Okrem použitia aliasu a zmeny stroja niekoho iného vidím, že ťahá znak -h 🙂
Zabudol som to povedať, ale to isté si myslím o scenári