10 noderīgi Linux komandrindas triki iesācējiem - 2. daļa


Es atceros, kad es pirmo reizi sāku lietot Linux un es biju pieradis pie Windows grafiskā interfeisa, es patiesi ienīdu Linux termināli. Toreiz man bija grūti atcerēties komandas un pareizi izmantot katru no tām. Laika gaitā es sapratu Linux termināla skaistumu, elastību un lietojamību, un, godīgi sakot, diena nepaiet bez lietošanas. Šodien es vēlētos dalīties ar dažiem noderīgiem trikiem un padomiem jaunajiem Linux lietotājiem, lai atvieglotu viņu pāreju uz Linux vai vienkārši palīdzētu viņiem iemācīties kaut ko jaunu (cerams).

  1. 5 interesanti komandrindas padomi un triki Linux - 1. daļa
  2. 5 noderīgas komandas Linux failu tipu pārvaldībai - 3. daļa

Šajā rakstā ir paredzēts parādīt dažus noderīgus trikus, kā izmantot Linux terminālu kā profesionāli ar minimālu prasmju daudzumu. Viss, kas jums nepieciešams, ir Linux terminālis un nedaudz brīva laika, lai pārbaudītu šīs komandas.

1. Atrodiet pareizo komandu

Pareizas komandas izpilde var būt vitāli svarīga jūsu sistēmai. Tomēr Linux ir tik daudz dažādu komandrindu, ka tās bieži ir grūti atcerēties. Tātad, kā jūs meklējat pareizo komandu, kas jums nepieciešama? Atbilde ir atbilstoša. Viss, kas jums nepieciešams, lai palaistu, ir:

# apropos <description>

Kur jums vajadzētu mainīt “aprakstu” ar faktisko meklētās komandas aprakstu. Šeit ir labs piemērs:

# apropos "list directory"

dir (1) - list directory contents
ls (1) - list directory contents
ntfsls (8) - list directory contents on an NTFS filesystem
vdir (1) - list directory contents

Kreisajā pusē jūs varat redzēt komandas un labajā pusē to aprakstu.

2. Izpildiet iepriekšējo komandu

Daudzas reizes jums vajadzēs atkal un atkal izpildīt vienu un to pašu komandu. Lai gan jūs varat atkārtoti nospiest tastatūras taustiņu Up, tā vietā varat izmantot komandu vēsture. Šajā komandā tiks uzskaitītas visas komandas, kuras ievadījāt kopš termināļa palaišanas:

# history

    1  fdisk -l
    2  apt-get install gnome-paint
    3  hostname linux-console.net
    4  hostnamectl linux-console.net
    5  man hostnamectl 
    6  hostnamectl --set-hostname linux-console.net
    7  hostnamectl -set-hostname linux-console.net
    8  hostnamectl set-hostname linux-console.net
    9  mount -t "ntfs" -o
   10  fdisk -l
   11  mount -t ntfs-3g /dev/sda5 /mnt
   12  mount -t rw ntfs-3g /dev/sda5 /mnt
   13  mount -t -rw ntfs-3g /dev/sda5 /mnt
   14  mount -t ntfs-3g /dev/sda5 /mnt
   15  mount man
   16  man mount
   17  mount -t -o ntfs-3g /dev/sda5 /mnt
   18  mount -o ntfs-3g /dev/sda5 /mnt
   19  mount -ro ntfs-3g /dev/sda5 /mnt
   20  cd /mnt
   ...

Kā redzēsit no iepriekš minētās izejas, jūs saņemsit visu izpildīto komandu sarakstu. Katrā rindā jums ir numurs, kas norāda rindu, kurā esat ievadījis komandu. Jūs varat atsaukt šo komandu, izmantojot:

!#

Kur # ir jāmaina ar faktisko komandas numuru. Lai labāk izprastu, skatiet zemāk redzamo piemēru:

!501

Ir ekvivalents:

# history

3. Izmantojiet pusnakts komandieri

Ja neesat pieradis izmantot tādas komandas kā cd, cp, mv, rm, nekā jūs varat izmantot pusnakts komandu. Tas ir viegli lietojams vizuālais apvalks, kurā varat izmantot arī peli:

Pateicoties F1 - F12 taustiņiem, jūs varat viegli veikt dažādus uzdevumus. Vienkārši pārbaudiet leģendu apakšā. Lai atlasītu failu vai mapi, noklikšķiniet uz pogas “Ievietot”.

Īsāk sakot, pusnakts komandu sauc par “mc”. Lai instalētu mc savā sistēmā, vienkārši palaidiet:

$ sudo apt-get install mc        [On Debian based systems]
# yum install mc                 [On Fedora based systems]

Šeit ir vienkāršs pusnakts komandiera izmantošanas piemērs. Atveriet mc, vienkārši ierakstot:

# mc

Tagad izmantojiet pogu TAB, lai pārslēgtos starp logiem - pa kreisi un pa labi. Man ir LibreOffice fails, kuru es pārvietošu uz mapi “Programmatūra”:

Lai pārvietotu failu jaunajā direktorijā, nospiediet tastatūras pogu F6. Tagad MC jums lūgs apstiprinājumu:

Pēc apstiprināšanas fails tiks pārvietots uz jauno mērķa direktoriju.

Lasīt vairāk: Kā lietot Midnight Commander failu pārvaldnieku Linux

4. Datora izslēgšana noteiktā laikā

Dažreiz dažas stundas pēc darba laika beigām jums būs jāizslēdz dators. Varat konfigurēt datoru tā izslēgšanai noteiktā laikā, izmantojot:

$ sudo shutdown 21:00

Tas liks jūsu datoram izslēgties konkrētajā jūsu norādītajā laikā. Varat arī likt sistēmai izslēgties pēc noteiktām minūtēm:

$ sudo shutdown +15

Tādā veidā sistēma tiks izslēgta 15 minūtēs.

5. Parādiet informāciju par zināmiem lietotājiem

Varat izmantot vienkāršu komandu, lai uzskaitītu savus Linux sistēmas lietotājus un noteiktu pamatinformāciju par viņiem. Vienkārši izmantojiet:

# lslogins

Tam vajadzētu dot jums šādu rezultātu:

UID USER PWD-LOCK PWD-DENY LAST-LOGIN GECOS
0 root 0 0 Apr29/11:35 root
1 bin 0 1 bin
2 daemon 0 1 daemon
3 adm 0 1 adm
4 lp 0 1 lp
5 sync 0 1 sync
6 shutdown 0 1 Jul19/10:04 shutdown
7 halt 0 1 halt
8 mail 0 1 mail
10 uucp 0 1 uucp
11 operator 0 1 operator
12 games 0 1 games
13 gopher 0 1 gopher
14 ftp 0 1 FTP User
23 squid 0 1
25 named 0 1 Named
27 mysql 0 1 MySQL Server
47 mailnull 0 1
48 apache 0 1 Apache
...

6. Meklējiet failus

Failu meklēšana dažreiz var nebūt tik vienkārša, kā jūs domājat. Labs piemērs failu meklēšanai ir:

# find /home/user -type f

Šī komanda meklēs visus failus, kas atrodas mapē/home/user. Komanda atrast ir ārkārtīgi spēcīga, un jūs varat tai nodot vairāk iespēju, lai meklēšanu padarītu vēl detalizētāku. Ja vēlaties meklēt failus, kas ir lielāki par norādīto lielumu, varat izmantot:

# find . -type f -size 10M

Iepriekš minētā komanda no pašreizējā direktorija meklēs visus failus, kuru lielums pārsniedz 10 MB. Neveiciet komandas palaišanu no Linux sistēmas saknes direktorija, jo tas var izraisīt augstu I/O jūsu datorā.

Viena no visbiežāk izmantotajām kombinācijām, ar kurām es atrodu, ir opcija “exec”, kas būtībā ļauj izpildīt dažas darbības ar meklēšanas komandas rezultātiem.

Piemēram, pieņemsim, ka mēs vēlamies atrast visus failus direktorijā un mainīt to atļaujas. To var viegli izdarīt ar:

# find /home/user/files/ -type f -exec chmod 644 {} \;

Iepriekš minētā komanda rekursīvi meklēs visus failus norādītajā direktorijā un izpildīs chmod komandu atrastajos failos. Esmu pārliecināts, ka nākotnē jūs atradīsit daudz vairāk šīs komandas izmantošanas veidu, tagad izlasiet 35 Linux ‘atrast’ komandu un izmantošanas piemērus.

7. Veidojiet direktoriju kokus ar vienu komandu

Jūs droši vien zināt, ka varat izveidot jaunus direktorijus, izmantojot komandu mkdir. Tātad, ja vēlaties izveidot jaunu mapi, palaidīsit kaut ko līdzīgu:

# mkdir new_folder

Bet ko tad, ja šajā mapē vēlaties izveidot 5 apakšmapes? 5 reizes pēc kārtas palaist mkdir nav labs risinājums. Tā vietā jūs varat izmantot -p opciju, piemēram:

# mkdir -p new_folder/{folder_1,folder_2,folder_3,folder_4,folder_5}

Galu galā jums vajadzētu būt 5 mapes, kas atrodas mapē new_folder:

# ls new_folder/

folder_1 folder_2 folder_3 folder_4 folder_5

8. Kopējiet failu vairākos direktorijos

Failu kopēšana parasti tiek veikta ar komandu cp. Faila kopēšana parasti izskatās šādi:

# cp /path-to-file/my_file.txt /path-to-new-directory/

Tagad iedomājieties, ka šis fails ir jākopē vairākos direktorijos:

# cp /home/user/my_file.txt /home/user/1
# cp /home/user/my_file.txt /home/user/2
# cp /home/user/my_file.txt /home/user/3

Tas ir mazliet absurdi. Tā vietā jūs varat atrisināt problēmu ar vienkāršu vienas rindas komandu:

# echo /home/user/1/ /home/user/2/ /home/user/3/ | xargs -n 1  cp /home/user/my_file.txt

9. Lielāku failu dzēšana

Dažreiz faili var izaugt ārkārtīgi lieli. Esmu redzējis gadījumus, kad viena žurnāla faila vājo administrēšanas prasmju dēļ apjoms pārsniedz 250 GB. Šādos gadījumos faila noņemšana ar rm lietderību var nebūt pietiekama, jo ir jānoņem ārkārtīgi liels datu apjoms. Operācija būs “smaga”, un no tās vajadzētu izvairīties. Tā vietā jūs varat izvēlēties patiešām vienkāršu risinājumu:

# > /path-to-file/huge_file.log

Kur jums, protams, būs jāmaina ceļš un failu nosaukumi ar precīziem, lai tie atbilstu jūsu gadījumam. Iepriekš minētā komanda vienkārši ierakstīs tukšu izvades failu. Vienkāršāk sakot, tas iztukšos failu, neradot lielu I/O jūsu sistēmā.

10. Palaidiet to pašu komandu vairākos Linux serveros

Nesen viens no mūsu lasītājiem mūsu LinuxSay forumā jautāja, kā izpildīt vienu komandu vairākām Linux kastēm vienlaikus, izmantojot SSH. Viņam mašīnu IP adreses izskatījās šādi:

10.0.0.1
10.0.0.2
10.0.0.3
10.0.0.4
10.0.0.5

Tātad šeit ir vienkāršs šī jautājuma risinājums. Savāc serveru IP adreses vienā failā, ko sauc par list.txt, zem viena, kā parādīts iepriekš. Tad jūs varat palaist:

# for in $i(cat list.txt); do ssh [email $i 'bash command'; done

Iepriekš minētajā piemērā jums būs jāmaina “lietotājs” ar faktisko lietotāju, ar kuru reģistrēsities, un “bash komanda” ar faktisko komandu bash, kuru vēlaties izpildīt. Metode darbojas labāk, ja savās mašīnās izmantojat autentifikāciju bez paroles ar SSH atslēgu, jo tādā veidā nevajadzēs atkārtoti ievadīt lietotāja paroli.

Ņemiet vērā, ka, iespējams, komandai SSH jums būs jānodod daži papildu parametri atkarībā no Linux kastes iestatīšanas.

Secinājums

Iepriekš minētie piemēri ir patiešām vienkārši, un es ceru, ka tie ir palīdzējuši jums atrast Linux skaistumu un to, kā jūs viegli varat veikt dažādas darbības, kas var aizņemt daudz vairāk laika citās operētājsistēmās.