20 avancerede kommandoer til Linux-brugere på mellemniveau


Du har måske fundet den første artikel meget nyttig, denne artikel er en udvidelse af de 20 nyttige kommandoer til Linux-nybegyndere. Den første artikel var beregnet til nybegyndere, og denne artikel er til brugere på mellemniveau og avancerede brugere. Her finder du, hvordan du tilpasser søgning, kender de processer, der kører guide til at dræbe dem, hvordan du gør din Linux-terminal produktiv, er et vigtigt aspekt, og hvordan du kompilerer c, c ++, java-programmer i nix.

21. Kommando: Find

Søg efter filer i det givne bibliotek, start hierarkisk ved det overordnede bibliotek og flyt til underkataloger.

[email :~# find -name *.sh 

./Desktop/load.sh 
./Desktop/test.sh 
./Desktop/shutdown.sh 
./Binary/firefox/run-mozilla.sh 
./Downloads/kdewebdev-3.5.8/quanta/scripts/externalpreview.sh 
./Downloads/kdewebdev-3.5.8/admin/doxygen.sh 
./Downloads/kdewebdev-3.5.8/admin/cvs.sh 
./Downloads/kdewebdev-3.5.8/admin/ltmain.sh 
./Downloads/wheezy-nv-install.sh

Bemærk: Indstillingen \ "- navn‘ gør søgningen stor og følsom. Du kan bruge indstillingen \ "- iname‘ til at finde noget uanset tilfældet. (* er et jokertegn og søger i hele filen med udvidelsen '.sh', du kan bruge filnavn eller en del af filnavnet til at tilpasse output).

[email :~# find -iname *.SH ( find -iname *.Sh /  find -iname *.sH)

./Desktop/load.sh 
./Desktop/test.sh 
./Desktop/shutdown.sh 
./Binary/firefox/run-mozilla.sh 
./Downloads/kdewebdev-3.5.8/quanta/scripts/externalpreview.sh 
./Downloads/kdewebdev-3.5.8/admin/doxygen.sh 
./Downloads/kdewebdev-3.5.8/admin/cvs.sh 
./Downloads/kdewebdev-3.5.8/admin/ltmain.sh 
./Downloads/wheezy-nv-install.sh
[email :~# find -name *.tar.gz 

/var/www/modules/update/tests/aaa_update_test.tar.gz 
./var/cache/flashplugin-nonfree/install_flash_player_11_linux.i386.tar.gz 
./home/server/Downloads/drupal-7.22.tar.gz 
./home/server/Downloads/smtp-7.x-1.0.tar.gz 
./home/server/Downloads/noreqnewpass-7.x-1.2.tar.gz 
./usr/share/gettext/archive.git.tar.gz 
./usr/share/doc/apg/php.tar.gz 
./usr/share/doc/festival/examples/speech_pm_1.0.tar.gz 
./usr/share/doc/argyll/examples/spyder2.tar.gz 
./usr/share/usb_modeswitch/configPack.tar.gz

Bemærk: Ovenstående kommando søger efter al den fil, der har udvidelsen ‘tar.gz’ i rodmappen og alle underkataloger inklusive monterede enheder.

Læs flere eksempler på Linux 'find' -kommando på 35 Find kommandoeksempler i Linux

22. Kommando: grep

Kommandoen ‘grep’ søger i den givne fil efter linjer, der indeholder et match til de givne strenge eller ord. Søg efter '/ etc/passwd' efter 'tecmint' bruger.

[email :~# grep tecmint /etc/passwd 

tecmint:x:1000:1000:Tecmint,,,:/home/tecmint:/bin/bash

Ignorer ordbogstav og alle andre kombinationer med '-i' mulighed.

[email :~# grep -i TECMINT /etc/passwd 

tecmint:x:1000:1000:Tecmint,,,:/home/tecmint:/bin/bash

Søg rekursivt (-r), dvs. læs alle filer under hvert bibliotek efter en streng “127.0.0.1“.

[email :~# grep -r "127.0.0.1" /etc/ 

/etc/vlc/lua/http/.hosts:127.0.0.1
/etc/speech-dispatcher/modules/ivona.conf:#IvonaServerHost "127.0.0.1"
/etc/mysql/my.cnf:bind-address		= 127.0.0.1
/etc/apache2/mods-available/status.conf:    Allow from 127.0.0.1 ::1
/etc/apache2/mods-available/ldap.conf:    Allow from 127.0.0.1 ::1
/etc/apache2/mods-available/info.conf:    Allow from 127.0.0.1 ::1
/etc/apache2/mods-available/proxy_balancer.conf:#    Allow from 127.0.0.1 ::1
/etc/security/access.conf:#+ : root : 127.0.0.1
/etc/dhcp/dhclient.conf:#prepend domain-name-servers 127.0.0.1;
/etc/dhcp/dhclient.conf:#  option domain-name-servers 127.0.0.1;
/etc/init/network-interface.conf:	ifconfig lo 127.0.0.1 up || true
/etc/java-6-openjdk/net.properties:# localhost & 127.0.0.1).
/etc/java-6-openjdk/net.properties:# http.nonProxyHosts=localhost|127.0.0.1
/etc/java-6-openjdk/net.properties:# localhost & 127.0.0.1).
/etc/java-6-openjdk/net.properties:# ftp.nonProxyHosts=localhost|127.0.0.1
/etc/hosts:127.0.0.1	localhost

Bemærk: Du kan bruge disse følgende muligheder sammen med grep.

  1. -w for word (egrep -w ‘word1 | word2‘/sti/til/fil).
  2. -c for optælling (dvs. det samlede antal gange mønsteret matchede) (grep -c 'ord'/sti/til/fil).
  3. –farve til farvet output (grep –farveserver/etc/passwd).

23. Kommando: mand

'Manden' er systemets manuelle personsøger. Man leverer online dokumentation for alle mulige muligheder med en kommando og dens anvendelser. Næsten al kommando kommer med deres tilsvarende manuelle sider. For eksempel,

[email :~# man man

MAN(1)                                                               Manual pager utils                                                              MAN(1)

NAME
       man - an interface to the on-line reference manuals

SYNOPSIS
       man  [-C  file]  [-d]  [-D]  [--warnings[=warnings]]  [-R  encoding]  [-L  locale]  [-m  system[,...]]  [-M  path]  [-S list] [-e extension] [-i|-I]
       [--regex|--wildcard] [--names-only] [-a] [-u] [--no-subpages] [-P pager] [-r prompt] [-7] [-E encoding] [--no-hyphenation] [--no-justification]  [-p
       string] [-t] [-T[device]] [-H[browser]] [-X[dpi]] [-Z] [[section] page ...] ...
       man -k [apropos options] regexp ...
       man -K [-w|-W] [-S list] [-i|-I] [--regex] [section] term ...
       man -f [whatis options] page ...
       man -l [-C file] [-d] [-D] [--warnings[=warnings]] [-R encoding] [-L locale] [-P pager] [-r prompt] [-7] [-E encoding] [-p string] [-t] [-T[device]]
       [-H[browser]] [-X[dpi]] [-Z] file ...
       man -w|-W [-C file] [-d] [-D] page ...
       man -c [-C file] [-d] [-D] page ...
       man [-hV]

Manuel side til selve mandsiden, på samme måde 'mandkat' (manuel side til kattekommando) og 'mand ls' (manuel side til kommando ls).

Bemærk: mandesiden er beregnet til kommandereference og læring.

24. Kommando: ps

ps (Process) giver status for kørende processer med en unik Id kaldet PID.

[email :~# ps

 PID TTY          TIME CMD
 4170 pts/1    00:00:00 bash
 9628 pts/1    00:00:00 ps

Hvis du vil liste status for alle processer sammen med proces-id og PID, skal du bruge indstillingen '-A'.

[email :~# ps -A

 PID TTY          TIME CMD
    1 ?        00:00:01 init
    2 ?        00:00:00 kthreadd
    3 ?        00:00:01 ksoftirqd/0
    5 ?        00:00:00 kworker/0:0H
    7 ?        00:00:00 kworker/u:0H
    8 ?        00:00:00 migration/0
    9 ?        00:00:00 rcu_bh
....

Bemærk: Denne kommando er meget nyttig, når du vil vide, hvilke processer der kører eller muligvis har brug for PID nogle gange for at processen bliver dræbt. Du kan bruge den med kommandoen 'grep' til at finde tilpasset output. For eksempel,

[email :~# ps -A | grep -i ssh

 1500 ?        00:09:58 sshd
 4317 ?        00:00:00 sshd

Her er 'ps' pipelined med 'grep' kommando for at finde tilpasset og relevant output af vores behov.

25. Kommando: dræb

OK, du har måske forstået, hvad denne kommando er til, fra navnet på kommandoen. Denne kommando bruges til at dræbe en proces, der ikke er relevant nu eller ikke reagerer. Det er meget nyttigt kommando, snarere en meget meget nyttig kommando. Du er måske bekendt med hyppige genstart af windows på grund af det faktum, at en kørende proces oftest ikke kan dræbes, og hvis den dræbes, har den brug for windows for at få genstart, så ændringer kan træde i kraft, men i Linux-verdenen, der er ingen sådanne ting. Her kan du dræbe en proces og starte den uden at genstarte hele systemet.

Du har brug for en procestid (ps) for at dræbe den.

Lad os antage, at du vil dræbe programmet 'apache2', der muligvis ikke reagerer. Kør 'ps -A' sammen med grep-kommandoen.

[email :~# ps -A | grep -i apache2

1285 ?        00:00:00 apache2

Find proces 'apache2', bemærk dens pid og dræb den. For eksempel er 'apache2' pid i mit tilfælde '1285'.

[email :~# kill 1285 (to kill the process apache2)

Bemærk: Hver gang du kører en proces igen eller starter et system, genereres der en ny pid til hver proces, og du kan vide om de aktuelle kørende processer og dens pid ved hjælp af kommandoen ‘ps’.

En anden måde at dræbe den samme proces på er.

[email :~# pkill apache2

Bemærk: Kill kræver job-id/proces-id til afsendelse af signaler, hvor du som i pkill har mulighed for at bruge mønster, angive procesindehaver osv.

26. Kommando: hvor er

'Whereis' kommandoen bruges til at lokalisere kommandoens binære sider, kilder og manuelle sider. For eksempel for at finde de binære sider, kilder og manuelle sider for kommandoen 'ls' og 'kill'.

[email :~# whereis ls 

ls: /bin/ls /usr/share/man/man1/ls.1.gz
[email :~# whereis kill

kill: /bin/kill /usr/share/man/man2/kill.2.gz /usr/share/man/man1/kill.1.gz

Bemærk: Dette er nyttigt at vide, hvor binærfilerne nogle gange er installeret til manuel redigering.

27. Kommando: tjeneste

Kommandoen 'service' styrer start, stop eller genstart af en 'service'. Denne kommando gør det muligt at starte, genstarte eller stoppe en tjeneste uden at genstarte systemet, for at ændringerne kan træde i kraft.

[email :~# service apache2 start

 * Starting web server apache2                                                                                                                                 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
httpd (pid 1285) already running						[ OK ]
[email :~# service apache2 restart

* Restarting web server apache2                                                                                                                               apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
 ... waiting .apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName  [ OK ]
[email :~# service apache2 stop

 * Stopping web server apache2                                                                                                                                 apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName
 ... waiting                                                           		[ OK ]

Bemærk: Alt proces script ligger i '/etc/init.d', og stien skal muligvis medtages på bestemte systemer, dvs. på trods af at køre "service apache2 start" bliver du bedt om at køre "/ etc/init.d/apache2 start ”.

28. Kommando: alias

alias er en indbygget shell-kommando, der giver dig mulighed for at tildele navn til en lang kommando eller ofte brugt kommando.

Jeg bruger kommandoen ‘ls -l’ ofte, som inkluderer 5 tegn inklusive mellemrum. Derfor oprettede jeg et alias for dette til 'l'.

[email :~# alias l='ls -l'

Kontroller, om det fungerer eller ej.

[email :~# l

total 36 
drwxr-xr-x 3 tecmint tecmint 4096 May 10 11:14 Binary 
drwxr-xr-x 3 tecmint tecmint 4096 May 21 11:21 Desktop 
drwxr-xr-x 2 tecmint tecmint 4096 May 21 15:23 Documents 
drwxr-xr-x 8 tecmint tecmint 4096 May 20 14:56 Downloads 
drwxr-xr-x 2 tecmint tecmint 4096 May  7 16:58 Music 
drwxr-xr-x 2 tecmint tecmint 4096 May 20 16:17 Pictures 
drwxr-xr-x 2 tecmint tecmint 4096 May  7 16:58 Public 
drwxr-xr-x 2 tecmint tecmint 4096 May  7 16:58 Templates 
drwxr-xr-x 2 tecmint tecmint 4096 May  7 16:58 Videos

For at fjerne alias 'l' skal du bruge følgende kommando 'unalias'.

[email :~# unalias l

tjek, om 'l' stadig er alias eller ej.

[email :~# l

bash: l: command not found

Gør lidt sjov ud af denne kommando. Lav alias for en bestemt vigtig kommando til en anden vigtig kommando.

alias cd='ls -l' (set alias of ls -l to cd)
alias su='pwd' (set alias of pwd to su)
....
(You can create your own)
....

Når din ven nu skriver 'cd', skal du bare tænke på, hvor sjovt det ville være, når han får katalogoversigt og ikke biblioteksændring. Og når han prøver at være 'su', er alt hvad han får placeringen af arbejdsmappen. Du kan fjerne aliaset senere ved hjælp af kommandoen 'unalias' som forklaret ovenfor.

29. Kommando: df

Rapporter diskbrug af filsystem. Nyttigt for bruger såvel som systemadministrator til at holde styr på deres diskbrug. ‘Df’ fungerer ved at undersøge biblioteksposter, som normalt kun opdateres, når en fil lukkes.

[email :~# df

Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda1       47929224 7811908  37675948  18% /
none                   4       0         4   0% /sys/fs/cgroup
udev             1005916       4   1005912   1% /dev
tmpfs             202824     816    202008   1% /run
none                5120       0      5120   0% /run/lock
none             1014120     628   1013492   1% /run/shm
none              102400      44    102356   1% /run/user
/dev/sda5         184307   79852     94727  46% /boot
/dev/sda7       95989516   61104  91045676   1% /data
/dev/sda8       91953192   57032  87218528   1% /personal

For flere eksempler på kommandoen ‘df’, kan du læse artiklen 12 df Kommandoeksempler i Linux.

30. Kommando: du

Anslå brug af filplads. Output resuméet af diskbrug ved altid at filere hierarkisk, dvs. på rekursiv måde.

[email :~# du

8       ./Daily Pics/wp-polls/images/default_gradient
8       ./Daily Pics/wp-polls/images/default
32      ./Daily Pics/wp-polls/images
8       ./Daily Pics/wp-polls/tinymce/plugins/polls/langs
8       ./Daily Pics/wp-polls/tinymce/plugins/polls/img
28      ./Daily Pics/wp-polls/tinymce/plugins/polls
32      ./Daily Pics/wp-polls/tinymce/plugins
36      ./Daily Pics/wp-polls/tinymce
580     ./Daily Pics/wp-polls
1456    ./Daily Pics
36      ./Plugins/wordpress-author-box
16180   ./Plugins
12      ./May Articles 2013/Xtreme Download Manager
4632    ./May Articles 2013/XCache

Bemærk: 'df' rapporterer kun brugsstatistikker på filsystemer, mens 'du' på den anden side måler bibliotekets indhold. For flere 'du' kommandoeksempler og brug, læs 10 du (Disk Usage) -kommandoer.

31. Kommando: rm

Kommandoen 'rm' står for fjern. rm bruges til at fjerne filer og mapper.

[email :~# rm PassportApplicationForm_Main_English_V1.0

rm: cannot remove `PassportApplicationForm_Main_English_V1.0': Is a directory

Kataloget kan ikke fjernes blot ved kommandoen 'rm', du skal bruge '-rf' -kontakten sammen med 'rm'.

[email :~# rm -rf PassportApplicationForm_Main_English_V1.0

Advarsel: "rm -rf" kommando er en destruktiv kommando, hvis du ved et uheld kommer til den forkerte mappe. Når du først har 'rm -rf' en mappe, går alle filer og selve mappen tabt for evigt, pludselig. Brug det med forsigtighed.

32. Kommando: ekko

ekko som navnet antyder ekko en tekst på standardoutput. Det har intet at gøre med shell, og shell læser heller ikke output af ekkokommandoen. Imidlertid videregiver ekko meddelelsen til brugeren via et interaktivt script via terminalen. Det er en af kommandoen, der ofte bruges i scripting, interaktiv scripting.

[email :~# echo "linux-console.net is a very good website" 

linux-console.net is a very good website

1. Opret en fil, der hedder 'interactive_shell.sh' på skrivebordet. (Husk '.sh' udvidelse er must).
2. kopier og indsæt nedenstående script, nøjagtigt det samme som nedenfor.

#!/bin/bash 
echo "Please enter your name:" 
   read name 
   echo "Welcome to Linux $name"

Indstil derefter udførelsestilladelse og kør scriptet.

[email :~# chmod 777 interactive_shell.sh
[email :~# ./interactive_shell.sh

Please enter your name:
Ravi Saive
Welcome to Linux Ravi Saive

Bemærk: '#!/Bin/bash' fortæller shell, at det er et script, og det er altid en god ide at medtage det øverst i scriptet. 'Læs' læser det givne input.

33. Kommando: passwd

Dette er en vigtig kommando, der er nyttig til at ændre eget kodeord i terminalen. Det er klart, at du har brug for at kende din nuværende passowrd af sikkerhedsmæssige årsager.

[email :~# passwd 

Changing password for tecmint. 
(current) UNIX password: ******** 
Enter new UNIX password: ********
Retype new UNIX password: ********
Password unchanged   [Here was passowrd remians unchanged, i.e., new password=old password]
Enter new UNIX password: #####
Retype new UNIX password:#####

34. Kommando: lpr

Denne kommando udskriver filer navngivet på kommandolinjen til den navngivne printer.

[email :~# lpr -P deskjet-4620-series 1-final.pdf

Bemærk: Med kommandoen ‘lpq’ kan du se status på en printer (hvad enten den er op eller ej) og de job (filer), der venter på at blive udskrevet.

35. Kommando: cmp

sammenligne to filer af enhver type og skrive resultaterne til standardoutput. Som standard returnerer 'cmp' 0, hvis filerne er ens; hvis de adskiller sig, rapporteres det byte og linjenummer, hvor den første forskel opstod.

For at give eksempler på denne kommando, lad os overveje to filer:

[email :~# cat file1.txt

Hi My name is Tecmint
[email :~# cat file2.txt

Hi My name is tecmint [dot] com

Lad os nu sammenligne to filer og se output af kommandoen.

[email :~# cmp file1.txt file2.txt 

file1.txt file2.txt differ: byte 15, line 1

36. Kommando: wget

Wget er et gratis værktøj til ikke-interaktiv (dvs. kan arbejde i baggrunden) download af filer fra Internettet. Det understøtter HTTP, HTTPS, FTP-protokoller og HTTP-proxyer.

[email :~# wget http://downloads.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2

--2013-05-22 18:54:52--  http://downloads.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2
Resolving downloads.sourceforge.net (downloads.sourceforge.net)... 216.34.181.59
Connecting to downloads.sourceforge.net (downloads.sourceforge.net)|216.34.181.59|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: http://kaz.dl.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2 [following]
--2013-05-22 18:54:54--  http://kaz.dl.sourceforge.net/project/ffmpeg-php/ffmpeg-php/0.6.0/ffmpeg-php-0.6.0.tbz2
Resolving kaz.dl.sourceforge.net (kaz.dl.sourceforge.net)... 92.46.53.163
Connecting to kaz.dl.sourceforge.net (kaz.dl.sourceforge.net)|92.46.53.163|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 275557 (269K) [application/octet-stream]
Saving to: ‘ffmpeg-php-0.6.0.tbz2’

100%[===========================================================================>] 2,75,557    67.8KB/s   in 4.0s   

2013-05-22 18:55:00 (67.8 KB/s) - ‘ffmpeg-php-0.6.0.tbz2’ saved [275557/275557]

37. Kommando: monter

Mount er en vigtig kommando, der bruges til at montere et filsystem, der ikke monterer sig selv. Du har brug for rodtilladelse for at montere en enhed.

Kør først 'lsblk' efter tilslutning af dit filsystem og identificer din enhed, og noter dit enheds tildelte navn.

[email :~# lsblk 

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT 
sda      8:0    0 931.5G  0 disk 
├─sda1   8:1    0 923.6G  0 part / 
├─sda2   8:2    0     1K  0 part 
└─sda5   8:5    0   7.9G  0 part [SWAP] 
sr0     11:0    1  1024M  0 rom  
sdb      8:16   1   3.7G  0 disk 
└─sdb1   8:17   1   3.7G  0 part

Fra denne skærm var det klart, at jeg tilsluttede en 4 GB pendrive, så 'sdb1' er mit filsystem, der skal monteres. Bliv en rod for at udføre denne handling og skift til/dev-biblioteket, hvor hele filsystemet er monteret.

[email :~# su
Password:
[email :~# cd /dev

Opret en mappe med navnet alt, men skal være relevant for reference.

[email :~# mkdir usb

Monter nu filsystemet 'sdb1' til biblioteket 'usb'.

[email :~# mount /dev/sdb1 /dev/usb

Nu kan du navigere til/dev/usb fra terminal- eller X-windows-system og adgangsfil fra det monterede bibliotek.

38. Kommando: gcc

gcc er den indbyggede kompilator til 'c' sprog i Linux-miljø. Et simpelt c-program, gem det på dit skrivebord som Hello.c (husk '.c' udvidelse er must).

#include <stdio.h>
int main()
{
  printf("Hello world\n");
  return 0;
}
[email :~# gcc Hello.c
[email :~# ./a.out 

Hello world

Bemærk: Ved kompilering af et c-program genereres output automatisk til en ny fil "a.out", og hver gang du kompilerer et c-program, bliver den samme fil "a.out" ændret. Derfor er det et godt råd at definere en outputfil under kompilering, og der er således ingen risiko for overskrivning til outputfil.

[email :~# gcc -o Hello Hello.c

Her sender '-o' output til 'Hello' -fil og ikke 'a.out'. Kør det igen.

[email :~# ./Hello 

Hello world

39. Kommando: g ++

g ++ er den indbyggede kompilator til ‘C ++’, det første objektorienterede programmeringssprog. Et simpelt c ++ - program, gem det på dit skrivebord som Add.cpp (husk '.cpp' udvidelse er must).

#include <iostream>

using namespace std;

int main() 
    {
          int a;
          int b;
          cout<<"Enter first number:\n";
          cin >> a;
          cout <<"Enter the second number:\n";
          cin>> b;
          cin.ignore();
          int result = a + b;
          cout<<"Result is"<<"  "<<result<<endl;
          cin.get();
          return 0;
     }
[email :~# g++ Add.cpp
[email :~# ./a.out

Enter first number: 
...
...

Bemærk: Ved kompilering af et c ++ - program genereres output automatisk til en ny fil "a.out", og hver gang du kompilerer et c ++ - program, bliver den samme fil "a.out" ændret. Derfor er det et godt råd at definere en outputfil under kompilering, og der er således ingen risiko for overskrivning til outputfil.

[email :~# g++ -o Add Add.cpp
[email :~# ./Add 

Enter first number: 
...
...

40. Kommando: java

Java er et af verdens mest anvendte programmeringssprog og betragtes som hurtigt, sikkert og pålideligt. Det meste af den internetbaserede service i dag kører på java.

Opret et simpelt java-program ved at indsætte nedenstående test i en fil, der hedder tecmint.java (husk '.java' udvidelse er must).

class tecmint {
  public static void main(String[] arguments) {
    System.out.println("Tecmint ");
  }
}
[email :~# javac tecmint.java
[email :~# java tecmint

Bemærk: Næsten hver distribution leveres fyldt med gcc-kompilator, stort antal distroer har indbygget g ++ og java-kompilator, mens nogle måske ikke har. Du kan apt eller yum den nødvendige pakke.

Glem ikke at nævne din værdifulde kommentar og den type artikel, du vil se her. Jeg vil snart være tilbage med et interessant emne om de mindre kendte fakta om Linux.