window.pipedriveLeadboosterConfig = { basis: 'leadbooster-chat.pipedrive.com', companyId: 11580370, playbookUuid: '22236db1-6d50-40c4-b48f-8b11262155be', versie: 2, } ;(functie () { var w = venster als (w.LeadBooster) { console.warn('LeadBooster bestaat al') } anders { w.LeadBooster = { q: [], on: functie (n, h) { this.q.push({ t: 'o', n: n, h: h }) }, trigger: functie (n) { this.q.push({ t: 't', n: n }) }, } } })() Ruby programmeren. Beginnersterminal - deel 2 - The Codest
The Codest
  • Over ons
  • Diensten
    • Software Ontwikkeling
      • Frontend ontwikkeling
      • Backend ontwikkeling
    • Staff Augmentation
      • Frontend ontwikkelaars
      • Backend ontwikkelaars
      • Gegevensingenieurs
      • Cloud Ingenieurs
      • QA ingenieurs
      • Andere
    • Het advies
      • Audit & Consulting
  • Industrie
    • Fintech & Bankieren
    • E-commerce
    • Adtech
    • Gezondheidstechnologie
    • Productie
    • Logistiek
    • Automotive
    • IOT
  • Waarde voor
    • CEO
    • CTO
    • Leveringsmanager
  • Ons team
  • Case Studies
  • Weten hoe
    • Blog
    • Ontmoetingen
    • Webinars
    • Bronnen
Carrière Neem contact op
  • Over ons
  • Diensten
    • Software Ontwikkeling
      • Frontend ontwikkeling
      • Backend ontwikkeling
    • Staff Augmentation
      • Frontend ontwikkelaars
      • Backend ontwikkelaars
      • Gegevensingenieurs
      • Cloud Ingenieurs
      • QA ingenieurs
      • Andere
    • Het advies
      • Audit & Consulting
  • Waarde voor
    • CEO
    • CTO
    • Leveringsmanager
  • Ons team
  • Case Studies
  • Weten hoe
    • Blog
    • Ontmoetingen
    • Webinars
    • Bronnen
Carrière Neem contact op
Pijl terug KEREN TERUG
2020-04-21
Software Ontwikkeling

Ruby programmeren. Beginnersterminal - deel 2

The Codest

Damian Watroba

Software Engineer

Hallo! Deze keer hebben we weer een set nuttige commando's voorbereid om je te helpen vertrouwd te raken met het gebruik van de terminal. Het eerste deel van de tutorial kun je hier vinden: Beginners terminal - deel 1.

Terminal - Theorie

Waar ben ik?

datum - Als we een dergelijke behoefte en wens hebben, kunnen we de huidige datum in de terminal controleren.

damian@rubydev:~$ datum
wto, 7 sty 2020,

Aanmelden en noteren

kat (concatenate) - dit commando heeft vele toepassingen, maar de meest populaire is het weergeven van de inhoud van bestanden.

In het onderstaande voorbeeld zie je twee bestanden - ruby_1.txt en ruby_2.txt - samen met hun inhoud. De cat [bestandsnaam] commando toont de inhoud van een enkel bestand, terwijl het cat [bestandsnaam 1] [bestandsnaam 2] geeft de inhoud van beide bestanden in de juiste volgorde weer.

Terminal-1

Er is nog één ding dat we kunnen doen met de kat commando - de standaarduitvoer omleiden naar een nieuw bestand met het commando > teken. Dit betekent dat de inhoud die op het scherm wordt weergegeven, wordt doorgestuurd naar een opgegeven bestand. Als het opgegeven bestand niet bestaat op de opgegeven locatie, wordt het automatisch aangemaakt.

Terminal 2

Wat hebben we hier?

ps (processtatus) - geeft basisinformatie over processen in het systeem. Dit commando is vergelijkbaar met Windows Taakbeheer, waar je een lijst krijgt van alle draaiende applicaties en processen. Elke toepassing, programma of lopende opdracht wordt een proces met een unieke identificatie, de zogenaamde PID (Process IDentifier).

damian@rubydev:~$ ps
 PID TTY TIJD CMD
 556 pts/0 00:00:00 ps
2919 pts/0 00:00:00 bash

Zoals je kunt zien, is de ps commando liet ons niet veel zien. Om alle actieve processen te controleren, moeten we het commando ps met een aux argument.

Aby zobaczyc wszystkie procesy w systemie, uzywajac skladni BSD:
   ps ax
   ps bijl

doden - Soms stopt een applicatie of programma met reageren. Dit is waar doden commando komt goed van pas. Naar doden een proces, hoeft u alleen maar de doden commando met zijn PID.

Hoe vind je de PID van dat proces? Je kunt het beste de eerder genoemde ps aux opdracht. Het kan gebeuren dat doden alleen is niet genoeg omdat het proces wacht op het einde van een ander afhankelijk proces. Daarom, doden wordt ook vaak gebruikt met de -9 optie. Het betekent de onmiddellijke beëindiging van het lopende proces, dus voordat je deze optie gebruikt, moet je ervoor zorgen dat alle belangrijke wijzigingen zijn opgeslagen. Laten we eens kijken naar een voorbeeld van zo'n commando:

damian@rubydev:~$ kill -9 1234

Echo!

echo - dit is het commando dat de tekst teruggeeft die eraan is toevertrouwd. Net als bij katkunt u de ingevoerde tekst naar een bestand sturen met behulp van de optie echo commando.

Terminal-3

Het kan nuttig zijn

Als je de geschiedenis van eerder ingevoerde commando's wilt bekijken, kunnen we de optie geschiedenis commando.

Als je het terminalvenster wilt wissen, heb je de optie duidelijk commando.

De verlaat Zoals de naam al zegt, sluit het commando de terminal of het huidige geopende tabblad.

Het begin en het einde

De hoofd geeft het begin van een bestand of standaard uitvoer weer. De standaardwaarde is de eerste tien regels. Je kunt dit aanpassen met de -n optie waar je elk geheel getal onder n. Om dit beter te illustreren, zal ik een voorbeeld gebruiken.

We hebben een tekstbestand nodig. Laten we het al genoemde geschiedenis commando en de omleiding > karakter.

damian@rubydev:~$ geschiedenis > geschiedenis.txt

Op deze manier werd een bestand met de volledige geschiedenis van commando's gemaakt. Vervolgens werd met behulp van kop -15 geschiedenis.txtis het mogelijk om de eerste vijftien commando's weer te geven die in de terminal zijn ingevoerd.

Terminal-4

Ook de staart toont ons de laatste regels van het geselecteerde bestand.

Terminal-5

Zoek op

grep (global regular expression print) wordt gebruikt om in de tekst te zoeken naar een tekenreeks die overeenkomt met de gegeven reguliere uitdrukking (RegExp). Het wordt vaak gebruikt om een specifieke uitdrukking in een bestand te vinden of om de geretourneerde uitvoer te "filteren". Laten we voor dit doel de eerder gemaakte geschiedenis.txt bestand en controleer hoe vaak de ps commando werd tot nu toe gebruikt:

damian@rubydev:~$ grep ps history.txt
   82 echo "Lorem ipsum rubydev 1" > ruby_1.txt
   84 echo "Lorem ipsum rubydev 2" > ruby_2.txt
   92 ps
   93 ps aux
   94 ps --help
   95 man ps
   96 ps -h
   98 ps -help
   99 ps -ejH
  100 ps aux
  101 man ps
  102 ps -aux
  103 ps aux
  109 geschiedenis | grep ps
  113 echo "lorem ipsum rubydev" > rubydev.rb

Zoals je kunt zien, grep ook woorden gevonden die de zin bevatten ps. De uitdrukking die in ons voorbeeld werd gebruikt was ps alleen. Ik ben van plan om een apart artikel te schrijven over reguliere expressies, maar voor nu moedig ik je aan om het onderwerp zelf te verkennen. Basiskennis is op dit moment net genoeg.

Commando's combineren

| (pipe) is een symbool waarmee we verschillende commando's (processen) kunnen combineren en tegelijkertijd kunnen starten. Specifiek kunnen we de uitvoer (stdout) van het ene commando combineren met de invoer (stdin) van het andere. Dit is een zeer nuttige functie.

POLECENIE_A | POLECENIE_B
POOLCENIE_A | POOLCENIE_B | POOLCENIE_C

Bijvoorbeeld:

geschiedenis | grep ps

De uitvoer (stdout) van de geschiedenis commando wordt doorzocht door de grep commando en retourneert alle strings met de overeenkomende ps uitdrukking.

geschiedenis | staart -5

In dit geval kan de staart commando met de -5 optie toont de laatste vijf regels van de uitvoer (stdout) van de geschiedenis commando.

Deze combinatie is vooral handig bij het zoeken naar de PID van het proces dat je wilt beëindigen. Onthoud dat het uitvoeren van de grep commando maakt ook een proces aan, dus je ziet meestal de PID van het grep proces in de laatste regel.

Terminal-6

Bestanden en mappen openen

Voordat we naar het commando gaan om het type toegangsrechten te veranderen, is het de moeite waard om te vermelden dat elk besturingssysteem de zogenaamde toegangsrechten heeft. Dit betekent dat elke map of bestand metadata bevat over wie er toegang toe heeft. De eerste kolom van de volgende "uitvoer" vertelt ons er alles over (uitvoerinformatie weergegeven in het terminalvenster):

geschiedenis | staart -5

Toegang tot bestanden en mappen wordt gedefinieerd door drie componenten. De eerste (user) staat voor een enkele gebruiker, de tweede (group) staat voor een groep, terwijl de derde (other) van toepassing is op alle andere gebruikers.

d - bepaalt of het een map of een bestand is (d - map, f - bestand)

rwx - gebruikersrechten

r-x - rechten voor de groep

r-x - geautoriseerd voor alle andere gebruikers

Om het te vereenvoudigen kun je het in drie delen verdelen:

Laten we nu eens kijken naar de betekenis van deze rechten:

r (lezen) - hiermee kun je de inhoud lezen

w (schrijven) - hiermee kun je de inhoud wijzigen

x (uitvoeren) - hiermee kun je een bestand uitvoeren of een map openen

Bestands- of mapmachtigingen kunnen worden gewijzigd met de optie chmod (wijzig modus) commando. De eenvoudigste manier om de permissies te wijzigen is door het ingebedde systeem te gebruiken en het nummer voor de permissies voor de gebruiker, groep en anderen op te geven.

Terminal-7

Om deze kennis in de praktijk te brengen, veranderen we de machtigingen voor de eerder genoemde wideo map voor groepen en andere gebruikers - haal alle rechten weg voor die twee, maar laat de volledige toelating gewoon voor de enkele gebruiker. Volgens de bovenstaande tabel wordt "geen rechten" aangeduid met het getal 0. Onmiddellijk na de chmod commando moet je drie cijfers invoeren, die elk de rechten specificeren voor de gegeven categorie (gebruiker - groep - overige). Aan het einde geef je de naam van het bestand of de map. Het commando zou er als volgt uit moeten zien:

damian@rubydev:~$ chmod 700 Wideo
damian@rubydev:~$ ls -l | tail -1
drwx------ 2 damian damian 4096 sty 6 17:41 Wideo

Samenvatting

Er is een hele zwerm andere commando's en de makkelijkste manier om ze allemaal onder de knie te krijgen is door te oefenen met het oplossen van specifieke problemen. Als je er meer over wilt weten, Ik raad het pocket Linux lexicon van commando's aan. Naar mijn mening is het een aangename manier om wat tijd te doden in het openbaar vervoer.

Lees meer:

– E-commerce: Nieuwe staat van het spel 2020 (verslag)

- Shopify, Spree of Solidus? Check waarom Ruby on Rails jou kan helpen met het ontwikkelen van je e-commerce

– Vuex-functies die je moet weten als je echt om je winkel geeft

Verwante artikelen

Software Ontwikkeling

Bouw Toekomstbestendige Web Apps: Inzichten van The Codest's Expert Team

Ontdek hoe The Codest uitblinkt in het creëren van schaalbare, interactieve webapplicaties met geavanceerde technologieën, het leveren van naadloze gebruikerservaringen op alle platforms. Ontdek hoe onze expertise digitale transformatie en business...

DE BESTE
Software Ontwikkeling

Top 10 in Letland gevestigde bedrijven voor softwareontwikkeling

Lees meer over de beste softwareontwikkelingsbedrijven van Letland en hun innovatieve oplossingen in ons nieuwste artikel. Ontdek hoe deze technologieleiders uw bedrijf kunnen helpen verbeteren.

thecodest
Oplossingen voor ondernemingen en schaalvergroting

Essentiële Java-softwareontwikkeling: Een gids voor succesvol uitbesteden

Verken deze essentiële gids over succesvolle outsourcing Java-softwareontwikkeling om de efficiëntie te verbeteren, toegang te krijgen tot expertise en projectsucces te stimuleren met The Codest.

thecodest
Software Ontwikkeling

De ultieme gids voor outsourcing in Polen

De sterke groei van outsourcing in Polen wordt gedreven door economische, educatieve en technologische vooruitgang, die IT-groei en een bedrijfsvriendelijk klimaat stimuleert.

DeCodest
Oplossingen voor ondernemingen en schaalvergroting

De complete gids voor IT-auditmiddelen en -technieken

IT-audits zorgen voor veilige, efficiënte en compliant systemen. Lees het volledige artikel om meer te weten te komen over het belang ervan.

The Codest
Jakub Jakubowicz CTO & medeoprichter

Abonneer je op onze kennisbank en blijf op de hoogte van de expertise uit de IT-sector.

    Over ons

    The Codest - Internationaal softwareontwikkelingsbedrijf met technische hubs in Polen.

    Verenigd Koninkrijk - Hoofdkantoor

    • Kantoor 303B, 182-184 High Street North E6 2JA
      Londen, Engeland

    Polen - Lokale technologieknooppunten

    • Fabryczna kantorenpark, Aleja
      Pokoju 18, 31-564 Krakau
    • Hersenambassade, Konstruktorska
      11, 02-673 Warschau, Polen

      The Codest

    • Home
    • Over ons
    • Diensten
    • Case Studies
    • Weten hoe
    • Carrière
    • Woordenboek

      Diensten

    • Het advies
    • Software Ontwikkeling
    • Backend ontwikkeling
    • Frontend ontwikkeling
    • Staff Augmentation
    • Backend ontwikkelaars
    • Cloud Ingenieurs
    • Gegevensingenieurs
    • Andere
    • QA ingenieurs

      Bronnen

    • Feiten en fabels over samenwerken met een externe partner voor softwareontwikkeling
    • Van de VS naar Europa: Waarom Amerikaanse startups besluiten naar Europa te verhuizen
    • Tech Offshore Ontwikkelingshubs Vergelijking: Tech Offshore Europa (Polen), ASEAN (Filippijnen), Eurazië (Turkije)
    • Wat zijn de grootste uitdagingen voor CTO's en CIO's?
    • The Codest
    • The Codest
    • The Codest
    • Privacy policy
    • Gebruiksvoorwaarden website

    Copyright © 2025 door The Codest. Alle rechten voorbehouden.

    nl_NLDutch
    en_USEnglish de_DEGerman sv_SESwedish da_DKDanish nb_NONorwegian fiFinnish fr_FRFrench pl_PLPolish arArabic it_ITItalian jaJapanese ko_KRKorean es_ESSpanish etEstonian elGreek nl_NLDutch