Sono stato lontano da Linux per 10 anni. Quali comandi ho perso? [chiuso]


10

Sono stato lontano da Linux per alcuni anni, ma ora sono di nuovo tornato con Ubuntu 10.04. Ho usato Gentoo nel 2000 e conoscevo i miei comandi, ma ora che il mondo di Linux è progredito un po 'oltre, non ci sono molti nuovi comandi da imparare?

Conosci un elenco di comandi della shell di Linux che sono ampiamente utilizzati ora e che non esistevano 10 anni fa?

Identificato finora: ngrep, sshfs, pv


1
Solo curioso, perché a 10 anni da Linux? :)
data

Bene, è iniziato con .NET / C # e poi passano gli anni. Ho sempre usato Win XP.
gr.

Risposte:


5

Non so cosa hai usato nel 2000. Scopri quelli nuovi da un meme della storia; il mio sotto. Mi aspetto che l'uso del comando segua una lunga coda. Le basi non sono cambiate, ma c'è molto altro da scegliere.

history |awk '{print $2}' |sort |uniq -c |sort -rnk1,1 |head -n 20 |vipe
    219 ls
    100 git
     92 cd
     91 sudo
     66 <custom>
     64 aptitude
     60 locate
     54 grep
     52 less
     48 mplayer
     45 vim
     43 find
     36 cat
     31 <ssh alias>
     26 <ssh alias>
     24 dpkg
     23 file
     23 df
     21 <pgrep alias>
     20 man

2
Usi git più spesso di cd. È un po 'figo.
Ludwig Weinzierl,

Ho provato questo sul mio laptop. sudo, cd, vim, startx e openttd ... Anche se cos'è Vipe? Ho dovuto lasciare quel po 'fuori dal mio sistema.
Macha,

@Macha vipe proviene dal pacchetto moreutils, inserisce un editor nella pipeline. Va bene ignorare quella parte.
Tobu,

@Ludwig Sembra che io usi hgpiù spesso di ogni altra cosa, ha 5x sul comando successivo ( hg: 244 ,: cd48). In realtà sono sorpreso cdpersino di averlo fatto, mentre provo a usare pushd/ popdquanto più posso.
roguesys,

Per me, più screenfinestre alleviano la necessità di cd. E git è da bombe.
Tobu,

8

In realtà, probabilmente non ti sei perso molto. I popolari libri di consultazione UNIX che sono stati riscritti negli anni '70 (o giù di lì) sono ancora popolari e ancora utili - i comandi di base non sono davvero cambiati.

L'unica novità che viene subito in mente è il gestore dei pacchetti; potresti aver bisogno di abituarti alla sintassi di aptitudee così apt-getvia, se non usi i loro frontend grafici. C'è anche il controllo della versione, cioè svne gitsono nuovi e popolari, se sei interessato a quel genere di cose. Ma non sono esattamente i comandi UNIX di base.


1
Sì, sto usando svn da un po 'di tempo, ma ho dovuto iniziare con git perché l'80% di tutti gli strumenti che mi interessano è ospitato su github. Anche package.el in emacs è utile e cose come zshkit ed emacs-starter-kit.
gr.

Intendevi mercuriale git? Internet non è d'accordo sul fatto che SVN è un po 'fuori moda?
Roguesys,

@alexandru: No, e no, non ancora. Anche se suppongo che non avrei dovuto dire "nuovo e accattivante" - che non si applica a svn, vero, ma è ancora piuttosto popolare tra le persone che non sono i primi ad adottare le nuove tecnologie (che sono molte persone, specialmente in attività commerciale). Ad esempio, ci sono più [svn]domande su SO che [git]domande.
David Z,

5

Una grande differenza è ora un aiuto molto completo nel completamento della bash. Rende molto più facile usare la riga di comando.


1
Sì, l'ho notato, ma un po 'troppo tardi. Era già passato a zsh a causa del completamento. :)
grm

5

Non troverai molto diverso. Alcune opzioni qua e là. Per la maggior parte, specialmente su sistemi come Ubuntu, scoprirai che la maggior parte delle nuove cose è la GUI.

Per quanto riguarda i nuovi comandi, se sei un grande fan dello schermo come me, potresti apprezzare il nuovo tmux o byobu .

Ho dovuto tornare indietro e controllare le date di uscita di molte cose ... Sembra che wget (1996), curl (1997) e iptables (1998) fossero usciti qualche anno prima del 2000, quindi quelli potrebbero non esserlo nuovo per te.


5

pv - Barra di avanzamento per comandi lunghi

pvè probabilmente nuovo per te. Fornisce una barra di avanzamento per qualsiasi programma in grado di accettare input da una pipe.

Per installare (Ubuntu)

apt-get install pv

Esempio

Mostra i progressi mentre calcoli una somma di controllo per un file di grandi dimensioni:

pv large_file | sha1sum

2

ls, cp, dmesg, cat, grep, ecc. Qualcosa non dovrebbe essere cambiato per secoli :), quindi nei comandi di base non hai perso nulla.


1
L'unico cambiamento che mi piace davvero è grep -r direttamente invece di combinarlo con find.
gr.

2

L'unica modifica principale (a parte i desktop che sostituiscono l'X11 grezzo) è probabilmente il repository.

Quindi la sintassi ' apt-get ' su Ubuntu (e rpm simili su Redhat)


Niente oggi più divertente di Gentoo nel 2000 (IMHO), beh, tranne Sabayon, ma non ho ancora avuto il tempo di giocarci.
gr.

1

Non un nuovo comando ma usato molto più spesso in questi giorni:

ssh e sftp

Consentono comunicazioni crittografate.


1

ngrep era in giro ~ 9-10 anni fa, ne sono abbastanza sicuro

pv non è un comando, è un'app CLI. Devi installare un pacchetto per poterlo usare.

sshfs non è un comando, è un nome generico per un filesystem di rete

Sostieni di essere un utente gentoo, ma la tua domanda è formulata in modo "inviami codez". Sembra che sia stato chiesto da qualcuno che pensa che conoscere i nomi dei comandi sia il proiettile d'argento. No, usare il cervello è il proiettile d'argento.

Ti consiglio vivamente di leggere (di nuovo, anche se l'hai già fatto in precedenza) Come porre domande in modo intelligente , perché penso che la tua domanda certamente non soddisfi questi standard.

Se dovessi confrontare Linux oggi e Linux 10 anni fa, vorrei sottolineare le seguenti differenze principali:

  • l'accesso a Internet è ora ampiamente disponibile, anche in alcuni paesi non molto sviluppati. Questa è un'arma a doppio taglio: la quantità di ragazzi sani e tecnologici adeguati è aumentata notevolmente, ma la percentuale di essi tra tutti gli utenti di Internet è diminuita. Se impari a evitare le persone che non condividono i tuoi interessi e a restare con persone che condividono interessi comuni con te, imparerai molto da loro. Anche i siti StackOverflow / ServerFault / SuperUser lo illustrano perfettamente.

  • molte più persone scrivono software libero. Se 10 anni fa sourceforge e freshmeat erano unici e SVN era il re del controllo delle versioni, oggi abbiamo github, launchpad e bitbucket, abbiamo molti strumenti di controllo della versione distribuiti, abbiamo un numero enorme di comunità che sviluppano software o semplicemente scambiano conoscenze . Oggi, se hai bisogno di software gratuito per un determinato compito specifico e sei abbastanza persistente, ci sono alte probabilità che troverai qualcosa che si adatta perfettamente a te. O qualcosa che ti si adatta "quasi alla perfezione" e finirai per contribuire e restituire alla comunità.

Modificato per includere la risposta alla tua domanda dal commento:

Mi chiedo cosa in particolare non ti sia piaciuto con queste domande e come potrei migliorarlo?

Non mi piaceva che la tua domanda iniziale fosse troppo generica.

Di solito si tenta di completare un determinato compito, si tenta di raggiungere un obiettivo molto speciale. Lo provi in ​​un modo, lo provi in ​​un altro modo, vai a rivedere alcune pagine man e ancora fallisci. Questo è il momento in cui vai a chiedere aiuto e consigli. Descrivi il tuo flusso di lavoro, il risultato atteso e ciò che effettivamente ottieni. Non vergognarti di ammettere che hai provato qualcosa e hai fallito. Le persone sono generalmente gentili e disponibili, la maggior parte non punta le dita e ti prende in giro, la maggior parte non ti vota per fallimento. Alcuni di loro ti avvertiranno persino di una domanda male formulata, accettando il rischio di essere sottoposti a downgrade per pedanteria :-)

Dichiarare il flusso di lavoro è utile per un paio di motivi:

  • i lettori della tua domanda devono fare meno ipotesi, perché saprebbero già che hai provato X, Y, Z e non ha funzionato
  • il modo in cui dichiari la tua domanda consente ad altri di stimare il tuo livello di conoscenza e di fornire una risposta che sarebbe facile da capire

Ecco un paio di situazioni:

  • è necessario utilizzare uno sniffer per eseguire il debug di un problema di rete. Provi tcpdump (che tra l'altro era lo standard 10 anni fa e oggi condivide il titolo con WireShark), trovi il suo output troppo enigmatico, i suoi valori predefiniti di opzioni non molto user-friendly. Qualcuno ti suggerisce ngrep, lo esegui, vedi che fornisce un output più intuitivo per impostazione predefinita e impari una cosa nuova.
  • fai cp -a per copiare una grande directory, vuoi vedere i progressi e devi attenerti alla riga di comando, nemmeno il comandante di mezzanotte è disponibile. Leggi la manpage di cp e non riesci a trovare le opzioni appropriate. Quindi qualcuno ti parla di pv.
  • non sei soddisfatto di ftp, perché trasferisce i dati senza crittografarli, ma vuoi anche modificare i file "da remoto". Qualcuno ti parla di sshfs, che "mappa" una directory remota sul tuo filesystem locale tramite una connessione crittografata.

Vedi, questi sono i tuoi ngrep, pv e sshfs. C'è una differenza tra le tue domande generali e i miei scenari? Certamente si. Proverò a spiegare il perché. Quindi hai chiesto alla gente di parlarti di fantastici comandi. Hai 3 risposte. Un giorno potresti aver bisogno di usare uno sniffer. E probabilmente ricorderete questa domanda e userete ngrep. E se ricevi 1000 risposte che suggeriscono 1000 nuovi comandi? Non credi che gran parte di loro scivolerà nella tua memoria per un breve periodo di tempo, poi te ne dimenticherai? Ciò accadrà sicuramente, perché quando acquisisci nuove conoscenze, devi esercitarti ad applicarle, per acquisire esperienza. Francamente, la tua domanda iniziale mi ricorda la situazione in cui un bambino cerca di imparare le arti marziali guardando le immagini in un libro :-)


2
Grazie per la tua opinione e il tuo consiglio. Come ho scritto, sono stato via per un po 'di tempo e interessato a raccogliere qualcosa di nuovo ed ero perplesso con questa domanda. Mi chiedo cosa in particolare non ti sia piaciuto con queste domande e come potrei migliorarlo? Quando si tratta di ngrep, questo è un nuovo comando per me. Lavoravo con tcpdump, ma nella maggior parte dei casi trovo l'aggiunta di ngrep molto più conveniente.
grm,


0

Questa è una buona domanda con una risposta non eccezionale. Come notò zaynyatyi, i vecchi amici sono ancora lì. Ciò che è più impressionante e scoraggiante è il semplice numero di strutture che sono state costruite sull'infrastruttura. Ad esempio, X windows è sempre lo stesso e xeyesfunziona come sempre. Ma poi c'è Gnome e DBUS e Metcity e GTK e una sequenza di avvio hodge-podge che rende SVR4 rc?.dquasi razionale.

La cosa più utile che è nuova per me - che mi ha tagliato i denti su V7 / BSD4.1 - è locate(1).


0

Uno che non mi rendevo conto per un po 'era less: il nome scherzoso era "less is more". moreè ancora lì, ma lessè meglio. Penso che sia stato in giro un po 'più di 10 anni, però - non era lì (penso) quando ero al college nei primi anni '90. Questo o forse l'ho dimenticato.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.