10 trucs útils de la línia d'ordres de Linux per a principiants - Part 2


Recordo que quan vaig començar a utilitzar Linux i estava acostumat a la interfície gràfica de Windows, realment odiava el terminal Linux. Aleshores trobava les ordres difícils de recordar i l'ús adequat de cadascuna d'elles. Amb el temps em vaig adonar de la bellesa, la flexibilitat i la usabilitat del terminal Linux i, per ser sincer, no passa un dia sense utilitzar-lo. Avui m'agradaria compartir alguns trucs i consells útils per als nouvinguts de Linux per facilitar la seva transició a Linux o simplement ajudar-los a aprendre alguna cosa nova (esperem).

  1. 5 consells i trucs interessants de la línia d'ordres a Linux - Part 1
  2. 5 ordres útils per gestionar els tipus de fitxers de Linux - Part 3

Aquest article pretén mostrar-vos alguns trucs útils com utilitzar el terminal Linux com un professional amb una quantitat mínima d'habilitats. Tot el que necessiteu és un terminal Linux i una mica de temps lliure per provar aquestes ordres.

1. Trobeu l'ordre correcte

Executar l'ordre correcte pot ser vital per al vostre sistema. Tanmateix, a Linux hi ha tantes línies d'ordres diferents que sovint són difícils de recordar. Aleshores, com busqueu l'ordre adequat que necessiteu? La resposta és a prop. Tot el que necessites per córrer és:

# apropos <description>

On hauríeu de canviar la descripció amb la descripció real de l'ordre que busqueu. Aquí teniu un bon exemple:

# 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

A l'esquerra podeu veure les ordres i a la dreta la seva descripció.

2. Executeu l'ordre anterior

Moltes vegades haureu d'executar la mateixa ordre una i altra vegada. Tot i que podeu prémer repetidament la tecla Amunt del vostre teclat, podeu utilitzar l'ordre de l'historial. Aquesta ordre enumerarà totes les ordres que heu introduït des que vau iniciar el terminal:

# 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
   ...

Com veureu a la sortida anterior, rebreu una llista de totes les ordres que heu executat. A cada línia teniu un número que indica la fila en què heu introduït l'ordre. Podeu recordar aquesta ordre utilitzant:

!#

On s'ha de canviar # amb el número real de l'ordre. Per a una millor comprensió, vegeu l'exemple següent:

!501

És equivalent a:

# history

3. Utilitza Midnight Commander

Si no esteu acostumats a utilitzar ordres com cd, cp, mv, rm, podeu utilitzar l'ordre de mitjanit. És un shell visual fàcil d'utilitzar en el qual també podeu utilitzar el ratolí:

Gràcies a les tecles F1 - F12, podeu realitzar fàcilment diferents tasques. Simplement comproveu la llegenda a la part inferior. Per seleccionar un fitxer o carpeta, feu clic al botó Insereix.

En resum, l'ordre de mitjanit s'anomena mc. Per instal·lar mc al vostre sistema, només cal que executeu:

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

Aquí teniu un exemple senzill d'utilitzar el comandant de mitjanit. Obriu mc simplement escrivint:

# mc

Ara feu servir el botó TAB per canviar entre les finestres, esquerra i dreta. Tinc un fitxer de LibreOffice que mouré a la carpeta Programari:

Per moure el fitxer al nou directori, premeu el botó F6 del vostre teclat. Ara MC us demanarà confirmació:

Un cop confirmat, el fitxer es mourà al nou directori de destinació.

Llegeix més: Com utilitzar el gestor de fitxers Midnight Commander a Linux

4. Apagueu l'ordinador en un moment específic

De vegades hauràs d'apagar l'ordinador unes hores després d'haver finalitzat el teu horari laboral. Podeu configurar el vostre ordinador perquè s'apagui en un moment específic mitjançant:

$ sudo shutdown 21:00

Això indicarà al vostre ordinador que s'apaga a l'hora específica que heu proporcionat. També podeu dir al sistema que s'apagui després d'uns minuts específics:

$ sudo shutdown +15

D'aquesta manera, el sistema s'apagarà en 15 minuts.

5. Mostra informació sobre usuaris coneguts

Podeu utilitzar una ordre senzilla per llistar els usuaris del vostre sistema Linux i una mica d'informació bàsica sobre ells. Simplement utilitza:

# lslogins

Això us hauria de donar la següent sortida:

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. Cerca Fitxers

Cercar fitxers de vegades pot no ser tan fàcil com penseu. Un bon exemple per cercar fitxers és:

# find /home/user -type f

Aquesta ordre cercarà tots els fitxers situats a /home/user. L'ordre find és extremadament potent i podeu passar-hi més opcions per fer que la cerca sigui encara més detallada. Si voleu cercar fitxers més grans que la mida indicada, podeu utilitzar:

# find . -type f -size 10M

L'ordre anterior cercarà al directori actual tots els fitxers que tinguin més de 10 MB. Assegureu-vos de no executar l'ordre des del directori arrel del vostre sistema Linux, ja que això pot provocar una E/S alta a la vostra màquina.

Una de les combinacions més utilitzades amb les que utilitzo find és l'opció exec, que bàsicament us permet executar algunes accions sobre els resultats de l'ordre find.

Per exemple, diguem que volem trobar tots els fitxers d'un directori i canviar-ne els permisos. Això es pot fer fàcilment amb:

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

L'ordre anterior cercarà tots els fitxers del directori especificat de forma recursiva i executarà l'ordre chmod als fitxers trobats. Estic segur que trobareu molts més usos en aquesta ordre en el futur, de moment llegiu 35 exemples d'ordres i ús de trobar de Linux.

7. Creeu arbres de directoris amb una comanda

Probablement sabeu que podeu crear directoris nous mitjançant l'ordre mkdir. Per tant, si voleu crear una carpeta nova, executareu alguna cosa com això:

# mkdir new_folder

Però, què passa si vols crear 5 subcarpetes dins d'aquesta carpeta? Executar mkdir 5 vegades seguides no és una bona solució. En lloc d'això, podeu utilitzar l'opció -p així:

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

Al final, hauríeu de tenir 5 carpetes situades a new_folder:

# ls new_folder/

folder_1 folder_2 folder_3 folder_4 folder_5

8. Copieu el fitxer a diversos directoris

La còpia de fitxers normalment es realitza amb l'ordre cp. La còpia d'un fitxer normalment té aquest aspecte:

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

Ara imagineu que heu de copiar aquest fitxer en diversos directoris:

# 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

Això és una mica absurd. En lloc d'això, podeu resoldre el problema amb una senzilla comanda d'una línia:

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

9. Eliminació de fitxers més grans

De vegades, els fitxers poden créixer molt grans. He vist casos en què un únic fitxer de registre superava els 250 GB a causa de les poques habilitats d'administració. L'eliminació del fitxer amb la utilitat rm pot no ser suficient en aquests casos a causa del fet que hi ha una quantitat extremadament gran de dades que cal eliminar. L'operació serà pesada i s'ha d'evitar. En canvi, podeu optar per una solució molt senzilla:

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

On, per descomptat, haureu de canviar el camí i els noms dels fitxers amb els exactes perquè coincideixin amb el vostre cas. L'ordre anterior simplement escriurà una sortida buida al fitxer. En paraules més senzilles, buidarà el fitxer sense provocar una E/S alta al vostre sistema.

10. Executeu la mateixa comanda en diversos servidors Linux

Recentment, un dels nostres lectors va preguntar al nostre fòrum LinuxSay, com executar una ordre única a diverses caixes de Linux alhora mitjançant SSH. Tenia les adreces IP de les seves màquines així:

10.0.0.1
10.0.0.2
10.0.0.3
10.0.0.4
10.0.0.5

Així que aquí teniu una solució senzilla d'aquest problema. Recolliu les adreces IP dels servidors en un fitxer anomenat list.txt una sota l'altra tal com es mostra a dalt. Llavors podeu executar:

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

A l'exemple anterior haureu de canviar usuari amb l'usuari real amb el qual registrareu i ordre bash amb l'ordre bash real que voleu executar. El mètode funciona millor quan utilitzeu l'autenticació sense contrasenya amb clau SSH a les vostres màquines, ja que d'aquesta manera no haureu d'introduir la contrasenya del vostre usuari una i altra vegada.

Tingueu en compte que potser haureu de passar alguns paràmetres addicionals a l'ordre SSH en funció de la configuració de les vostres caixes de Linux.

Conclusió

Els exemples anteriors són molt senzills i espero que us hagin ajudat a trobar una mica de la bellesa de Linux i com podeu realitzar fàcilment diferents operacions que poden trigar molt més temps en altres sistemes operatius.