Asas Linux: Pengenalan kepada bash. Menggunakan laluan mutlak dan relatif dalam konsol Pengenalan kepada bash

Selepas membaca artikel ini, anda akan mengetahui apa itu bash(jurubahasa arahan Linux standard), pelajari cara menggunakan arahan standard: ls, cp, mv... fahami tujuan inod, pautan keras dan simbolik, dan banyak lagi.

Tutorial ini bertujuan untuk mereka yang baru menggunakan Linux dan bagi mereka yang ingin menyemak atau meningkatkan pemahaman mereka tentang prinsip asas Linux, seperti menyalin dan memindahkan fail, mencipta pautan, menggunakan arahan Linux standard bersama-sama dengan ubah hala dan paip. Dalam artikel ini anda akan menemui banyak contoh yang menerangkan bahan yang dibentangkan. Bagi pemula, kebanyakan maklumat adalah baharu, tetapi bagi pengguna yang lebih maju, bahan ini boleh menjadi alat yang sangat baik untuk meringkaskan pengetahuan dan kemahiran sedia ada.

Pengenalan kepada bash

Shell

Jika anda menggunakan Linux, maka anda tahu bahawa selepas log masuk anda akan disambut oleh gesaan jurubahasa arahan. Contohnya ini:

\$

Jika selepas log masuk cangkerang grafik dimuatkan, maka untuk sampai ke penterjemah arahan anda perlu melancarkan emulator terminal (terminal gnome, terminal xfce4, konsole, xterm, rxvt...) atau tukar ke salah satu terminal maya dengan mengklik CtrlAltF1 atau CtrlAltF2 dan lain-lain.

Gesaan shell pada komputer anda mungkin berbeza daripada yang ditunjukkan dalam contoh. Ia mungkin mengandungi nama pengguna, nama komputer dan nama direktori kerja semasa. Tetapi di sebalik semua perbezaan ini, program yang mencetak jemputan ini dipanggil " cangkerang"(shell), dan kemungkinan besar shell arahan anda ialah program yang dipanggil bash.

Adakah anda menjalankan bash?

Anda boleh menyemak sama ada bash sedang berjalan dengan arahan berikut:

\$ gema \$SHELL/bin/bash

Jika anda menerima ralat akibat daripada melaksanakan arahan ini atau outputnya berbeza daripada yang dalam contoh, maka ada kemungkinan sistem anda tidak menggunakan bash sebagai shell arahan. Walaupun begitu, kebanyakan bahan akan relevan, tetapi kami masih mengesyorkan agar anda beralih kepada bash. Ini boleh dilakukan (jika bash dipasang pada sistem) dengan arahan:

\$ bash

Apa itu bash

Bash (singkatan untuk " B kami- a keuntungan SH ell") ialah penterjemah arahan standard pada kebanyakan sistem Linux. Tanggungjawabnya termasuk memproses dan melaksanakan arahan yang mana pengguna mengawal komputer. Sebaik sahaja anda selesai, anda boleh keluar dari proses shell. Selepas menekan kekunci CtrlD, pasukan keluar atau log keluar Proses shell akan ditamatkan dan anda akan digesa untuk memasukkan nama pengguna dan kata laluan anda sekali lagi.

Menggunakan "cd"

Mari mula menggunakan bash untuk menavigasi sistem fail. Untuk bermula, taip arahan berikut:

$ cd/

Dengan arahan ini kami menunjukkan kepada bash bahawa kami ingin berpindah ke direktori root - / . Semua direktori dalam sistem disusun dalam struktur pokok dan / ini adalah permulaannya (atau akarnya). Pasukan CD berfungsi untuk menukar direktori kerja semasa.

Laluan

Untuk mengetahui di mana dalam sistem fail anda berada (direktori kerja semasa), taip:

\$ pwd /

Dalam contoh di atas / - hujah perintah CD- dipanggil laluan. Ini adalah lokasi pada sistem fail di mana kita ingin bergerak. Dalam kes ini / - laluan mutlak, ini bermakna laluan itu adalah relatif kepada direktori akar.

Laluan mutlak

Berikut adalah beberapa contoh laluan mutlak

/dev /usr /usr/bin /usr/local/bin

Seperti yang anda mungkin telah perhatikan, semua laluan ini mempunyai persamaan yang bermula dengannya / . Dengan menentukan laluan /usr/local/bin sebagai hujah kepada arahan CD kita suruh dia pergi ke direktori root / , kemudian ke direktori usr, kemudian ke local dan bin. Laluan mutlak sentiasa bermula dengan /

Laluan relatif

Jenis laluan kedua dipanggil relatif. Bash, pasukan CD dan arahan lain mengira laluan ini berbanding dengan direktori semasa. Laluan relatif tidak pernah bermula dengan / . Sebagai contoh, jika kita berada di /usr

\$ cd /usr

Kemudian kita boleh pergi ke /usr/local/bin menggunakan laluan relatif

\$ cd tempatan/bin \$ pwd/usr/local/bin

Penggunaan ".."

Laluan relatif boleh mengandungi satu atau lebih direktori «..» . ".." menunjukkan direktori induk direktori kerja kami. Contoh:

\$ pwd/usr/local/bin\$ cd.. \$ pwd/usr/local

Seperti yang anda lihat, pasukan cd..'meningkatkan kita ke tahap yang lebih tinggi'.

Boleh tambah .. kepada laluan relatif. Ini akan membolehkan kami beralih ke direktori yang berada pada tahap yang sama dengan direktori yang kami ada. Contoh:

\$ pwd/usr/local\$ cd ../kongsi \$ pwd/usr/share

Contoh menggunakan laluan relatif

Laluan relatif boleh menjadi agak rumit. Berikut adalah beberapa contoh. Hasil daripada melaksanakan arahan tidak ditunjukkan, cuba tentukan direktori mana yang akan anda gunakan menggunakan bash.

\$ cd / tong \$ cd ../usr/share/zoneinfo \$ cd /usr/X11R6/bin \$ cd ../lib/X11 \$ cd /usr/bin \$ cd ../bin/../bin

Direktori kerja "."

Sebelum kita selesai bercakap tentang pasukan CD, terdapat beberapa perkara lagi yang patut disebut. Pertama, terdapat satu lagi direktori khas «.» , yang menunjuk ke direktori semasa. Direktori ini digunakan untuk menjalankan fail boleh laku yang terletak dalam direktori semasa.

\$ ./myprog

Dalam contoh terakhir, myprog ialah fail boleh laku yang terletak dalam direktori semasa yang akan dilancarkan untuk pelaksanaan.

cd dan direktori rumah pengguna

Untuk pergi ke direktori rumah anda, anda perlu menaip

\$ CD

Tanpa hujah, cd akan memindahkan anda ke direktori rumah anda. Untuk superuser, direktori rumah biasanya /root, dan untuk pengguna biasa - /home/username/. Tetapi bagaimana jika kita ingin menentukan fail tertentu yang terletak dalam direktori rumah. Sebagai contoh, sebagai hujah kepada program 'myprog'? Anda boleh menulis:

\$ ./myprog /home/user/myfile.txt

Walau bagaimanapun, menggunakan laluan mutlak ke fail tidak selalunya mudah. Operasi yang sama boleh dilakukan menggunakan ~ –tildes:

\$ ./myprog ~/myfile.txt

~ - nama khas yang menunjuk ke direktori rumah pengguna dalam bash.

Direktori rumah pengguna lain

Tetapi bagaimana jika kita perlu menunjuk ke fail dalam direktori rumah pengguna lain? Untuk melakukan ini, selepas tilde anda perlu menunjukkan nama pengguna ini. Sebagai contoh, untuk menunjuk ke fail fredsfile.txt yang terletak dalam direktori rumah pengguna fred:

\$ ./myprog ~fred/fredsfile.txt

arahan Linux

Pengenalan kepada ls

Anda mungkin sudah biasa dengan pasukan itu ls, yang, dipanggil tanpa hujah, memaparkan senarai fail yang disimpan dalam direktori kerja:

\$ cd /usr \$ ls X11R6 doc i686-pc-linux-gnu lib man sbin ssl bin gentoo-x86 sertakan libexec portage share tmp distfiles i686-linux info local portage.old src

Jika anda menentukan pilihan -a, anda akan dapat melihat semua fail, termasuk yang tersembunyi (yang namanya bermula dengan titik).

\$ ls -a. bin gentoo-x86 sertakan libexec portage share tmp .. distfiles i686-linux info local portage.old src X11R6 doc i686-pc-linux-gnu lib man sbin ssl

Senarai terperinci direktori

Selepas arahan itu sendiri ls satu atau lebih fail atau direktori boleh ditentukan sebagai hujahnya. Jika anda menentukan nama fail, arahan ls akan memaparkan maklumat tentang fail ini sahaja. Dan jika anda menentukan nama direktori, ls akan menunjukkan semua kandungannya. Pilihan '-l' pasukan ls boleh menjadi sangat berguna jika anda mahu, sebagai tambahan kepada nama fail, untuk mengetahui maklumat yang lebih terperinci tentang mereka (hak fail, nama pemilik, masa pengubahsuaian terakhir fail dan saiznya).

Contoh berikut menunjukkan penggunaan pilihan '-l' untuk memaparkan maklumat tentang fail yang disimpan dalam direktori /usr

\$ ls -l /usr drwxr-xr-x 7 root root 168 Nov 24 14:02 X11R6 drwxr-xr-x 2 root root 14576 Dis 27 08:56 bin drwxr-xr-x 2 root root 8856 Dis 26 12:47 distfiles lrw9xrw root 22 Dis 20:57 doc -> kongsi/doc drwxr-xr-x 62 root root 1856 Dis 27 15:54 gentoo-x86 drwxr-xr-x 4 root root 152 Dis 12 23:10 i686-linux drwxr-xr-x 4 root root 96 Nov 24 13:17 i686-pc-linux-gnu drwxr-xr-x 54 root root 5992 Dis 24 22:30 sertakan lrwxrwxrwx 1 root root 10 Dis 22 20:57 info -> share/info drwxr-x -x 28 root root 13552 Dis 26 00:31 lib drwxr-xr-x 3 root root 72 Nov 25 00:34 libexec drwxr-xr-x 8 root root 240 Dis 22 20:57 local lrwxrwxrwx 2 root 29 Dis :57 man -> share/man lrwxrwxrwx 1 root root 11 Dis 8 07:59 portage -> gentoo-x86/ drwxr-xr-x 60 root root 1864 Dis 8 07:55 portage.old drwxr-xr-x 3 root root 3096 Dis 22 20:57 sbin drwxr-xr-x 46 root root 1144 Dis 24 15:32 share drwxr-xr-x 8 root root 328 Dis 26 00:07 src drwxr-xr-x 6 root 4 176 Nov 25 ssl lrwxrwxrwx 1 akar punca 10 Dis 22 20:57 tmp -> ../var/tmp

Lajur pertama menunjukkan maklumat tentang hak akses setiap fail dalam senarai. (Sebentar lagi saya akan menerangkan huruf yang mana maksudnya) Lajur seterusnya menunjukkan bilangan pautan kepada setiap elemen senarai. Lajur ketiga dan keempat ialah pemilik dan kumpulan fail, masing-masing. Lajur kelima ialah saiz. Keenam ialah masa terakhir fail diubah suai ('masa terakhir diubah suai' atau mtime). Lajur terakhir ialah nama fail atau direktori (Jika ini adalah pautan, maka selepas ' –> ' bermaksud nama objek yang dirujuknya).

Bagaimana untuk melihat direktori sahaja

Kadangkala terdapat keperluan untuk melihat maklumat hanya tentang direktori, dan bukan tentang semua kandungannya. Pilihan ini akan membantu anda mengatasi tugas ini '-d', yang memberitahu arahan untuk memaparkan maklumat tentang direktori sahaja. Contoh:

\$ ls -dl /usr /usr/bin /usr/X11R6/bin ../share drwxr-xr-x 4 root root 96 Dis 18 18:17 ../kongsi drwxr-xr-x 17 root root 576 Dis 24 09:03 /usr drwxr-xr-x 2 root root 3192 Dis 26 12:52 /usr /X11R6/bin drwxr-xr-x 2 punca akar 14576 Dis 27 08:56 /usr/bin

Senarai rekursif dan maklumat inod

Tindakan pilihan '-R' bertentangan dengan tindakan '-d'. Ia membolehkan anda memaparkan maklumat tentang fail yang terletak dalam direktori secara rekursif. Mula-mula, kandungan direktori peringkat atas ditunjukkan, kemudian kandungan semua subdirektori secara bergilir-gilir, dan seterusnya. Output arahan ini boleh menjadi agak panjang, jadi kami tidak memberikan contoh, tetapi anda boleh mencubanya sendiri dengan menaip ' ls -R' atau ' ls -Rl‘.

Dan akhirnya, pilihan '-saya' digunakan untuk mencetak inod bagi setiap objek sistem fail.

\$ ls -i /usr 1409 X11R6 314258 i686-linux 43090 libexec 13394 sbin 1417 bin 1513 i686-pc-linux-gnu 5120 tempatan 13408 kongsi 8316 distfiles 1517 sertakan 2 rc 3768 man doc 3768 2 portage 36737 ssl 70744 gentoo-x86 1585 lib 5132 portage. lama 784 tmp

Apakah inod?

Setiap objek sistem fail (fail, direktori...) mempunyai nombor uniknya sendiri, dipanggil inode(nombor inod). Maklumat ini mungkin kelihatan tidak penting, tetapi memahami fungsi inod akan membantu anda memahami banyak operasi sistem fail. Sebagai contoh, mari kita lihat «.» Dan «..» seperti pautan yang terdapat dalam setiap direktori. Untuk memahami apa itu direktori «..» , ketahui inode direktori /use/local

\$ ls -id /usr/local 5120 /usr/local

Seperti yang kita dapat lihat, inode direktori /usr/local ialah 5120. Sekarang mari kita lihat inode direktori /usr/local/bin/.. apa yang ada:

\$ ls -id /usr/local/bin/.. 5120 /usr/local/bin/..

Ternyata inod direktori /usr/local dan /usr/local/bin/.. adalah sama! Ini bermakna inode 5120 dirujuk oleh dua nama: /usr/local dan /usr/local/bin/.. Iaitu, ini adalah dua nama berbeza untuk direktori yang sama. Setiap inod menunjuk ke lokasi tertentu pada cakera.

Setiap inod boleh mempunyai berbilang nama objek sistem fail yang dikaitkan dengannya. Bilangan 'sinonim' fail (objek sistem fail yang merujuk kepada inod yang sama) ditunjukkan oleh nombor dalam lajur kedua 'output arahan ls -l‘.

\$ ls -dl /usr/local drwxr-xr-x 8 punca akar 240 Dis 22 20:57 /usr/local

Contoh ini menunjukkan (lajur kedua) bahawa direktori /usr/local dirujuk oleh 8 objek sistem fail yang berbeza. Berikut adalah nama mereka:

/usr/local /usr/local/. /usr/local/bin/.. /usr/local/games/.. /usr/local/lib/.. /usr/local/sbin/.. /usr/local/share/.. /usr/local/ src/..

mkdir

Mari kita lihat arahan mkdir. Ia digunakan untuk membuat direktori baharu. Contoh berikut menunjukkan penciptaan tiga direktori baharu (tic, tac, toe) dalam direktori /tmp

\$ cd /tmp $ mkdir tic tac toe

Perintah lalai mkdir tidak boleh membuat struktur direktori bersarang. Oleh itu, jika anda perlu membuat beberapa direktori bersarang ( menang/der/ful), maka anda perlu memanggil arahan ini tiga kali berturut-turut:

\$ mkdir menang/der/ful mkdir: tidak boleh mencipta direktori "won/der/ful": Tiada fail atau direktori sedemikian \$ mkdir menang \$ mkdir menang/der \$ mkdir menang/der/ful

Anda boleh memudahkan operasi ini dengan menambah pilihan '-p' kepada arahan mkdir. Pilihan ini membolehkan anda membuat struktur direktori bersarang:

\$ mkdir -p mudah/sebagai/pai

Untuk mengetahui lebih lanjut tentang keupayaan utiliti ini, baca bantuan, yang dipanggil oleh arahan lelaki mkdir. Terdapat bantuan untuk hampir semua arahan dalam manual ini (contohnya lelaki ls), kecuali CD, kerana ia dibina ke dalam bash (untuk arahan sedemikian, bantuan dipanggil seperti ini: bantuan cd)

sentuh

Mari kita teruskan untuk mengkaji arahan cp Dan mv, digunakan untuk menyalin, menamakan semula dan memindahkan fail dan direktori. Tetapi sebelum itu, mari buat fail kosong dalam direktori /tmp menggunakan arahan sentuh:

\$ cd /tmp \$ sentuh copyme

Pasukan sentuh mengemas kini masa capaian terakhir fail (lajur keenam output arahan ls -l) jika ia sudah wujud atau mencipta fail kosong baharu jika ia belum wujud lagi. Selepas operasi ini, kita sepatutnya mempunyai fail kosong /tmp/copyme.

bergema

Sekarang kita mempunyai fail kosong, mari kita tulis rentetan teks ke dalamnya menggunakan arahan bergema, yang mencetak hujah yang dihantar kepadanya ke peranti output standard (terminal teks dalam kes kami).

\$ echo "firstfile" fail pertama

Untuk menulis baris pada fail kami, mari kita ubah hala output arahan kepadanya bergema:

\$ echo "firstfile" > copyme

Tanda > (lebih) memberitahu shell untuk mengalihkan output arahan di sebelah kiri ke fail yang namanya berada di sebelah kanan. Jika fail dengan nama yang sama tidak wujud, ia akan dibuat secara automatik. Dan jika fail sedemikian sudah wujud, ia akan ditimpa (semua kandungannya akan dipadamkan sebelum menulis baris kami). Pasukan 'ls -l' akan menunjukkan bahawa saiz fail kami kini 10 bait - sembilan bait diduduki oleh perkataan 'firstfile' dan satu bait oleh aksara suapan baris.

\$ ls -l copyme-rw-r--r-- 1 akar punca 10 Dis 28 14:13 copyme

kucing dan cp

Untuk mengeluarkan kandungan fail ke terminal, gunakan arahan kucing:

\$ copyme kucing fail pertama

Sekarang kita boleh mula menganalisis fungsi asas arahan cp. Perintah ini mengambil dua hujah. Yang pertama ialah nama fail sedia ada ('copyme'), yang kedua ialah nama salinan baharu yang ingin kita buat ('copyme').

\$ cp copyme copyedme

Kami boleh memastikan bahawa salinan baharu fail tersebut mempunyai nombor inod yang berbeza (ini bermakna kami sebenarnya menerima fail berasingan baharu, dan bukan hanya pautan ke yang lama)

\$ ls -i copyme copyedme 648284 salin saya 650704 salin saya

mv

Sekarang mari kita gunakan arahan mv untuk menamakan semula fail (“copyedme” -> “movedme”). Nombor inod tidak berubah selepas operasi ini, hanya nama fail sahaja yang berubah.

\$ mv copyedme movedme \$ ls -saya menggerakkan saya 648284 terharu saya

Nombor inod tidak berubah hanya jika fail yang dinamakan semula kekal dalam sistem fail di mana fail asal berada. Kami akan melihat dengan lebih dekat struktur sistem fail dalam salah satu bahagian berikut dalam tutorial ini.

Pasukan mv membolehkan anda bukan sahaja menamakan semula fail, tetapi juga untuk mengalihkannya. Contohnya, untuk memindahkan fail /var/tmp/myfile.txt ke direktori /home/pengguna anda perlu memberikan arahan:

\$ mv /var/tmp/myfile.txt /home/user

Fail akan dialihkan ke direktori rumah pengguna pengguna walaupun ia terletak pada sistem fail yang berbeza (dalam kes ini, fail akan disalin ke lokasi baharu selepas itu yang asal akan dipadamkan). Seperti yang anda duga, memindahkan fail ke sistem fail lain mengubah inodnya. Ini berlaku kerana setiap sistem fail mempunyai set inod tersendiri.

Perlu diingatkan bahawa terdapat kemungkinan bahawa nombor inod baru yang ditetapkan mungkin bertepatan dengan yang lama, tetapi ia adalah sangat kecil.

Untuk memindahkan beberapa fail pada masa yang sama ke satu direktori anda perlu menulis:

\$ mv /var/tmp/myfile1.txt /var/tmp/myfile2.txt /home/user \$ mv -t /home/user /var/tmp/myfile1.txt /var/tmp/myfile2.txt

Jika anda menambah pilihan '-v', laporan mengenai operasi yang dilakukan akan dipaparkan pada skrin:

\$ mv -vt /home/user /var/tmp/myfile1.txt /var/tmp/myfile2.txt"/var/tmp/myfile1.txt" -> "/home/user/myfile1.txt" "/var/tmp/myfile2.txt" -> "/home/user/myfile2.txt"

Semua fail dalam Linux mempunyai alamat khusus dalam sistem fail yang mana kami boleh mengaksesnya menggunakan pengurus fail atau utiliti konsol. Ini adalah topik yang agak mudah, tetapi ramai pemula menghadapi kesukaran dengannya.

Dalam artikel pendek hari ini kita akan melihat apakah laluan ke fail Linux, apa yang boleh, cara menulisnya dengan betul dan banyak lagi. Sekiranya anda mengalami kesulitan dengan ini sebelum ini, maka selepas membaca artikel semuanya akan menjadi jelas sepenuhnya.

Laluan fail dalam Linux

Sistem fail Linux sangat berbeza daripada Windows. Kami tidak akan mempertimbangkan strukturnya; itu telah dilakukan lebih awal. Kami akan memberi tumpuan kepada bekerja dengan fail.

Perbezaan yang paling penting ialah alamat fail tidak bermula dari pemacu, contohnya, C:\ atau D:\ seperti yang berlaku dalam Windows, tetapi dari akar, direktori sistem akar yang semua yang lain disambungkan. Alamatnya - /. Dan di sini kita perlu bercakap tentang alamat. Laluan fail Linux menggunakan garis miring ke hadapan "/" untuk memisahkan direktori dalam alamat, dan ini berbeza daripada yang biasa anda lihat pada Windows - \.

Sebagai contoh, jika dalam Windows laluan penuh ke fail pada desktop kelihatan seperti C:\Users\Sergiy\Desktop\, maka laluan fail dalam Linux hanyalah /home/sergiy/desktop/. Dengan ini, semuanya mudah dan jelas setakat ini. Tetapi masalah timbul lebih jauh.

Dalam sistem pengendalian Linux, terdapat beberapa jenis laluan fail. Mari lihat laluan apa yang terdapat di Linux:

  • Laluan linux penuh dan mutlak daripada akar sistem fail- anda telah melihat laluan ini dalam contoh di atas, ia bermula dari akar "/" dan menerangkan keseluruhan laluan ke fail;
  • Laluan relatif Linux- ini ialah laluan ke fail berbanding dengan folder semasa; laluan sedemikian sering menyebabkan kekeliruan.
  • Laluan berbanding dengan folder rumah pengguna semasa.- laluan dalam sistem fail, tetapi bukan dari akar, tetapi dari folder pengguna semasa.

Sekarang mari kita lihat dengan lebih dekat rupa laluan ini di Linux, dan juga lihat beberapa contoh untuk menjelaskannya sepenuhnya. Untuk demonstrasi, kami akan menggunakan utiliti ls, yang direka untuk melihat kandungan direktori.

Sebagai contoh, kami mempunyai direktori seperti ini dalam folder rumah kami dengan empat fail di dalamnya:

Inilah rupa laluan Linux penuh ke salah satu fail:

ls /home/sergiy/tmp/file1

Ini sudah pun laluan Linux relatif, yang bermula dari folder rumah, ia ditetapkan ~/. Perhatikan, bukan ~, iaitu ~/. Kemudian anda boleh menentukan subfolder, dalam kes kami tmp:

Nah, atau laluan fail dalam Linux, berbanding dengan folder semasa:

Pautan pertama menghala ke folder semasa (.), yang kedua (..) menghala ke folder yang lebih tinggi. Ini membuka lebih banyak kemungkinan untuk navigasi katalog. Sebagai contoh, untuk merujuk kepada fail dalam folder semasa anda boleh menggunakan binaan berikut:

Ini tidak berguna apabila melihat kandungan fail. Tetapi ia sangat penting semasa melaksanakan program. Kerana program ini mula-mula akan dicari dalam persekitaran PATH, dan hanya kemudian dalam folder ini. Oleh itu, jika anda perlu menjalankan program yang terletak dalam folder semasa dan ia dipanggil sama seperti dalam direktori /bin, maka tanpa pautan eksplisit yang anda perlukan untuk mencari fail dalam folder semasa, tiada apa yang akan berjaya.

Pembinaan sedemikian boleh berlaku agak kerap apabila menyusun atur cara. Anda boleh menggunakan semua simbol dan laluan fail linux ini bukan sahaja dalam terminal, tetapi juga dalam mana-mana pengurus fail, yang boleh menjadi sangat mudah.

Tetapi terminal Linux menyediakan lebih banyak pilihan. Anda boleh menggunakan aksara kad bebas mudah secara langsung dalam alamat fail atau direktori. Sebagai contoh, anda boleh menyenaraikan semua fail bermula dengan f:

Atau anda juga boleh mencari bukan sahaja dalam folder tmp, tetapi dalam mana-mana subfolder folder rumah anda:

Dan semua ini akan berfungsi, mungkin ia tidak selalu diperlukan dan praktikal. Tetapi dalam keadaan tertentu ia boleh banyak membantu. Fungsi ini dilaksanakan pada tahap shell Bash, jadi anda boleh menggunakannya dalam sebarang arahan. Cangkang melihat berapa banyak fail yang ditemui dan memanggil arahan untuk setiap satu daripadanya.

kesimpulan

Itu sahaja. Kini anda tahu semua yang anda perlukan untuk bukan sahaja menulis laluan yang betul ke fail Linux, tetapi juga melakukan tindakan yang lebih kompleks, seperti mencari fail atau menavigasi melalui direktori menggunakan arahan cd. Jika anda mempunyai sebarang soalan, tanya dalam komen!

Catatan berkaitan:


Saya baru-baru ini menerangkan arahan untuk menavigasi direktori dalam terminal Linux. Jadi saya memutuskan untuk meneruskan cerita tentang arahan dalam konsol. Jadi pergerakan itu nampaknya telah diselesaikan. Sekarang saya ingin melihat dengan lebih terperinci tentang laluan direktori yang terdapat dalam konsol.

Mari kita lihat dahulu laluan paling terkenal ke fail dan direktori kami, iaitu laluan mutlak. Buka terminal dan keluarkan arahan yang memaparkan laluan penuh ke direktori rumah anda. Saya bercakap tentang pasukan ini baru-baru ini, di sini. Masuk pwd:


:~$pwd
/home/dante


Seperti yang anda lihat, arahan konsol ini memaparkan laluan penuh bermula dari direktori akar. Saya baru sahaja menerangkan pergerakan seperti ini melalui direktori baru-baru ini, pergerakan ini menggunakan laluan mutlak. Tetapi ini bukan semua kemungkinan untuk bergerak melalui kategori sistem pengendalian kami. Dalam sistem pengendalian Linux, terdapat juga kemungkinan menggunakan laluan relatif.

Laluan relatif dalam kategori kiraan konsol berbanding dengan kategori anda berada. Mereka boleh digunakan menggunakan ".." dua titik ditunjukkan di hadapan folder yang kita ingin pergi. Mari pergi ke suatu tempat dalam sistem pengendalian kami. Sebagai contoh, dalam folder usr dan periksa kandungannya bersama pasukan ls.

dante@dante-1001PXD:~$ cd /usr
dante@dante-1001PXD:/usr$ ls

dante@dante-1001PXD:/usr$

Di sini kita melihat senarai direktori yang tersedia. Sekarang mari kita pergi ke direktori " kongsi».

dante@dante-1001PXD:~$ cd /usr/share


Jadi, sekarang kita dalam kategori /usr/share seperti yang kita lihat. Sekarang mari kita beralih ke kategori yang berada pada tahap yang sama dengan kategori di mana kita berada. Contohnya, dalam kategori " tempatan" Ini boleh dilakukan menggunakan laluan mutlak seperti ini.

dante@dante-1001PXD:~$ cd /usr/local

dante@dante-1001PXD:/usr/share$ pwd
/usr/share
dante@dante-1001PXD:/usr/share$


Seperti yang anda lihat, saya telah memaparkan untuk anda dalam konsol laluan penuh ke tempat anda berada. Kami tahu bahawa direktori " tempatan" berada pada tahap yang sama dengan direktori " kongsi” dan kita boleh menggunakan arahan seperti ini.

dante@dante-1001PXD:/usr/share$ cd ../local
dante@dante-1001PXD:/usr/local$


Seperti yang anda lihat, arahan pertanyaan telah menjadi lebih mudah. Tetapi ini hanya jika anda mengingati direktori yang berada pada tahap yang sama dengan direktori kerja anda, dan saya tidak selalu ingat direktori lain dalam konsol.

Untuk beralih ke direktori seterusnya, hanya masukkan arahan dalam konsol mengenai direktori kerja anda. Untuk tujuan ini, gunakan sebaliknya ".." dua mata, "." satu titik dan anda akan bergerak relatif kepada direktori dalam konsol di mana anda berada pada masa ini. Mari kita kembali ke direktori /usr dan mari kita lihat semula apa yang ada.

dante@dante-1001PXD:/usr/local$ cd /usr
dante@dante-1001PXD:/usr$ ls
permainan bin termasuk lib local sbin share src
dante@dante-1001PXD:/usr$


Sekarang mari kita pergi ke direktori " kongsi» relatif kepada direktori di mana kita berada sekarang. Untuk melakukan ini, masukkan dalam konsol

dante@dante-1001PXD:/usr$ cd ./local
dante@dante-1001PXD:/usr/local$


Seperti yang anda lihat, menggunakan laluan relatif boleh mengurangkan arahan yang anda masukkan ke dalam konsol Linux.