Come sono riusciti a guidare un computer Unix prima di mouse e copia e incolla?


12

Poiché Unix ha 40 anni, Unix è più vecchia dell'invenzione del mouse del computer. (In realtà, solo 3 anni, se Unix è del 1969 e il mouse del 1972.) Come mai un nuovo utente ha fatto qualcosa su Unix senza copiare e incollare? So che hanno sempre avuto un editor di testo con copia / incolla, ma tutto ciò che faccio su Linux è copiare dal browser Web e incollare (dalla CLIPBOARD) nel terminale vim o gedit o gnome. Sei lo stesso, vero?

Non riesco proprio a immaginare di caricare un file man in vim, copiare e incollare il codice da esso in un buffer temporaneo, e quindi avere bash eseguire quel buffer. Forse non hanno mai lasciato gli emacs; è questa la risposta?


11
indovina perché i vecchi comandi UNIX sono lunghi solo due lettere? :-)
Riccardo Murri

2
@RiccardoMurri Questo è un problema diverso: ci sono voluti circa un decennio per il completamento delle shell unix.
Gilles 'SO- smetti di essere malvagio' il

4
Si noti che "il web" non è stato un barlume agli occhi di Tim Berners-Lee quando è stato scritto unix. Effettivamente la rete di computer come sappiamo era ancora agli inizi. Era un mondo diverso.
dmckee --- ex-moderatore gattino

8
tutto ciò che faccio è copiare e incollare sembra un'abitudine molto pericolosa;)
Mr Shunz,

Difficilmente C&P usa il mouse in Vim. Basta usare i comandi di testo per questo, ad esempio yyper copiare (strappare) la riga corrente e pincollarla.
Martin Scharrer,

Risposte:


30

Copia-incolla è più vecchio del mouse. Il primo editor unix, ndr , aveva il tcomando di copiare un mucchio di righe in una posizione diversa. In vi, ci sono vari comandi per tagliare, strappare e incollare il testo. Per copiare il testo tra i file, è necessario salvare il testo da copiare in un file temporaneo e importare quel file temporaneo nel documento di destinazione, ad esempio con we rin ed ( :we :rin vi). Per includere l'output di un comando in un file, reindirizzarne l'output ( mycommand >fileo mycommand >>file) e importare quel file nel documento; vi ha introdotto il !comando e gli amici per inserire direttamente l'output senza richiedere un file temporaneo.

Il caricamento di una pagina man in Vim o Emacs e il copia-incolla da essa è una routine per gli utenti di Vim / Emacs. I browser Web non esistevano fino a quando Unix non era abbastanza grande da bere, ma lo stesso principio si applica ovunque: gli appunti sono più vecchi degli ambienti finestre. Ciò che ha portato gli ambienti di finestre è stato il copia-incolla tra applicazioni , che poteva essere fatto con un piccolo sforzo in più attraverso i file.


Grazie per aver risposto seriamente alla mia domanda!
marinara,

24

La semplice risposta è "non hanno copiato e incollato". Non nel modo in cui lo capisci, comunque.

I primissimi sistemi Unix utilizzavano teletipi o terminali stupidi per un uso interattivo. Questi dispositivi non avevano i potenti set di comandi del terminale che rendevano possibili innovazioni successive (!) vi. (Sì, una volta , viera l'alta tecnologia.) È pertanto non aveva modo di testo visivamente marchio da copiare o tagliare.

In mancanza di terminali intelligenti, i primi sistemi Unix offrivano un editor di linee chiamato ed. La cosa più vicina si deve tagliare e incollare con edè il tcomando, con il quale è possibile specificare le linee per numero di essere t ransferred (copiato) in un'altra posizione nel file.

Le schede perforate e il nastro di carta erano ancora importanti supporti I / O in quel momento. Un modo per "modificare" un nastro di carta è filtrare i suoi dati attraverso qualcosa di simile sed, direttamente da un lettore di nastri di carta mentre sta leggendo i dati. Oggi sedviene utilizzato per altre cose, ma era molto più importante nei primi giorni di Unix.


2
sedè fantastico per raschiare pagine web recuperate con wget.
LawrenceC,

9

No, non tutti sono uguali. Non tutti copiano il codice da Internet per funzionare sul proprio computer. Alcune persone effettivamente scrivono codice e talvolta lo pubblicano sul Web.

In genere non è necessario lasciare un editor di testo per leggere i dati da un altro file (come una pagina man) o per inviare i dati per l'esecuzione o su un file.

Inoltre, faccio spesso copia-incolla tra applicazioni in un terminale senza usare il mouse ancora oggi. GNU-screene tmuxsupporto usando la tastiera per selezionare le cose dallo schermo negli appunti e incollarle sulla shell o su altri programmi in altre finestre del terminale, o conservarle per dopo.


4
+1 "Alcune persone effettivamente scrivono codice". Grazie. L'OP rafforza semplicemente lo stereotipo del copione e copia-incolla di cose per bambini senza sapere cosa fa. Cargo-Cult Programmare qualcuno l'ha chiamato. Non era più difficile fare le cose "allora", richiedeva solo di SAPERE le cose, piuttosto che avere un richiamo della memoria basato su google. Le persone leggevano cose chiamate libri, informazioni memorizzate e capivano come funzionavano le cose. Si è perso così tanto. (Punterò il dito su "Visual ...", stupendo i programmatori).
lornix,

4

Quando ho iniziato a usare SunOS (prima che esistesse Linux) se qualcosa fosse davvero complicato, lo avremmo stampato su quel delizioso foglio verde e bianco, lo avremmo riportato al terminale e ci saremmo messi al lavoro. Abbiamo anche (ab) utilizzato applicazioni che ci consentono di eseguire più terminali da un singolo dial-up. (300 modem baud oscillavano!)

Oh, e abbiamo commesso molti errori di singoli personaggi che hanno impiegato giorni per dare la caccia. Quella era la vita.

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.