internet pencereler Android
Genişletmek

C Linux'taki yollarla çalışır. Linux Temelleri: Bash'e Giriş

Geçenlerde terminaldeki dizinlere taşınacak komutları açıkladım. Linux. Bu yüzden, konsoldaki ekipler hakkındaki hikayeye devam etmeye karar verdim. Yani hareketlerle, çözdüğü gibi görünüyor. Şimdi biraz daha detaylı düşünmek istiyorum, dizinlere hangi yolların konsolda olduğunu düşünüyorum.

İlk önce, mutlak yollar yani dosyalarımız ve dizinlerimize en ünlü yolları düşünelim. Terminali açın ve tam yolunu ana dizininize gösteren komutu çıkarın. Burada son zamanlarda bu takımdan bahsettim. Giriyoruz pwd.:


: ~ $ Pwd
/ Ana Sayfa / Dante


Gördüğünüz gibi, bu konsol ekibinin kök dizininden tam yolunu getirdi. Dizinlerdeki bu hareketler Son zamanlarda anlattım, bu hareket mutlak bir yolun yardımıyla. Ancak bu, işletim sistemimizin kategorilerinde hareket etme imkanları değildir. İÇİNDE işletim sistemi LinuxNisprili yolları kullanmak için hala bir fırsat var.

Konsoldaki göreceli yollar, bulunduğunuz kategori ile ilgili kategorileri sayarlar. Onları kullanmak mümkündür ".." Gitmek istediğimiz klasörün önünde belirtilen iki nokta. İşletim sistemimizde bir yere gidelim. Örneğin, klasörde usr ve içeriğini ekip tarafından inceleyin ls..

[E-posta Korumalı]: ~ $ CD / USR
[E-posta Korumalı]: / USR $ ls

[E-posta Korumalı]: / usr $

İşte mevcut dizinlerin listesini görüyoruz. Şimdi Dizin'e gidelim " paylaş.».

[E-posta Korumalı]: ~ $ CD / USR / Paylaş


Yani, şimdi kategorideyiz USR / Paylaş Gördüğümüz gibi. Şimdi, bulunduğumuz kategoriyle aynı seviyede olan kategoriye gidelim. Örneğin, kategorisinde " yerel" Bu, böyle bir mutlak yolun yardımı ile yapılabilir.

[E-posta Korumalı]: ~ $ CD / USR / Yerel

[E-posta Korumalı]: / usr / pay $ pwd
USR / Paylaş
[E-posta Korumalı]: / usr / Paylaş $


Gördüğünüz gibi, konsolda size, bulunduğunuz yere tam olarak getirdim. "Olduğunu biliyoruz" yerel"Bir dizinle aynı seviyede" paylaş."Ve bu tür ekibi kullanabiliriz.

[E-posta Korumalı]: / USR / Paylaş $ CD ../local
[E-posta Korumalı]: / Usr / yerel $


Gördüğünüz gibi, sorgu ekibi çok daha kolay hale geldi. Ancak bu, çalışma dizininizle aynı seviyede olan dizini hatırlıyorsanız ve her zaman konsolda değilim, diğer dizini hatırlıyorum.

Bir sonraki dizine gitmek için, konsoldaki komutu çalışma dizininize göre girmek yeterlidir. Bu amaçlar için yerine kullanın ".." iki puan, "." Bir nokta ve şu anda bulunduğunuz konsoldaki dizinle ilgili olarak hareket edeceksiniz. Dizine geri dönelim / usr. Ve orada bulunanları tekrar inceleyeceğiz.

[E-posta Korumalı]: / USR / yerel $ CD / USR
[E-posta Korumalı]: / USR $ ls
bin oyunları arasında lib yerel sbin paylaşım src
[E-posta Korumalı]: / usr $


Şimdi Dizin'e gidelim " paylaş."Şimdi olduğumuz dizinle ilgili. Bunu konsola girmek için

[E-posta Korumalı]: / usr $ cd ./local
[E-posta Korumalı]: / Usr / yerel $


Göreceli yolların kullanımını gördüğünüz gibi, konsola girdiğiniz komutları güçlü bir şekilde kısaltabilir. Linux.

Bu makaleyi okuduktan sonra, ne olduğunu öğreneceksiniz baskın (Standart Komuta Tercümanı Linux), Standart komutların nasıl kullanılacağını öğrenin: ls., cp., mv... Gelen, sert ve sembolik bağlantıların amacını ve çok daha fazlasını anlayacaksınız.

Bu kılavuz, yeni başlayanlar için Linux'a ve dosyaları kopyalamak ve hareket ettirmek, örneğin dosyaları kopyalamak ve hareket ettirmek, linkler oluşturarak, standart Linux takımlarını yeniden yönlendirme ve pavyonlarla birlikte kullanarak tekrarlamak veya geliştirmek isteyenler için tasarlanmıştır. Bu yazıda, belirtilen malzemeyi açıklayan birçok örnek bulacaksınız. Yeni başlayanlar için, bilgilerin çoğu yeni olacak ve daha gelişmiş kullanıcılar için, bu malzeme mevcut bilgi ve becerileri genelleştirmek için mükemmel bir ödenek olabilir.

Bash'e Giriş

Kabuk.

Linux kullanıyorsanız, oturum açtıktan sonra komut tercümanının davetiyesini memnuniyetle karşılayacağınızı biliyorsunuz. Örneğin, bu:

\$

Oturum açtıktan sonra bir grafik kabuğu yüklenirse, terminal emülatörünü (GNOME-terminal, xfce4-terminal, konsole, xterm, rxvt ...) başlatmanız veya sanal terminallerden birine tıklamanız gerekir. CtrlAlt.F1 veya CtrlAlt.F2. vb.

Bilgisayarınızdaki komut tercümanına davet, örnekte gösterilenlerden farklı olabilir. Bir kullanıcı adı, bilgisayar adı ve mevcut çalışma dizininin adı içerebilir. Ancak tüm bu farklılıklara rağmen, bu davetiyeyi basan bir program denir " kabuk."(Kabuk) ve büyük olasılıkla programın komut kabuğunuzun çağrıldığı programı baskın.

Bash'i başlattın mı?

Bash'in aşağıdaki komutu çalıştırıp çalışmadığını kontrol edin:

\$ echo \\ $ kabuk / bin / bash

Eğer bu komutun yürütülmesinin bir sonucu olarak, bir hata aldın ya da çıkışı, örnekte, sisteminizde Bash kullanmadığı bir komut kabuğu olarak sisteminizde mümkün olduğu gerçeğinden farklıdır. Buna rağmen, malzemenin çoğu alakalı olacak, ancak yine de bash'e geçmenizi öneririz. Komuta göre yapabilirsiniz (eğer bash kurulu ise) komut tarafından:

\$ baskın

Bash nedir

Bash (kısaltma " B.bizim a.kazanç. Shell ") Bu, çoğu Linux sisteminde standart bir komut tercümanıdır. Yükümlülükleri, kullanıcının bilgisayarı yönettiği komutların işlenmesi ve yürütülmesi yer alıyor. İşi tamamladıktan sonra, komut tercümanının işlemini tamamlayabilirsiniz. Anahtarlara bastıktan sonra CtrlD., takımlar ÇIKIŞ veya Çıkış Yap. Komut tercüman işlemi tamamlanacak ve kullanıcı adını ve şifreyi girmek için ekranda bir davetiye görünecektir.

"CD" kullanarak

Gezinmek için bash kullanmaya başlayalım dosya sistemi. Başlamak için aşağıdaki komutu yazın:

$ cd /

Kök dizinine geçmek istediğimiz bash işaret ettik - / . Sistemdeki tüm dizinler bir ağaç yapısına düzenlenir ve / Bu onun başlangıcı (veya kök). Takım cD Mevcut çalışma dizinini değiştirmek için kullanılır.

Yol

Dosya sisteminin hangi yerinde bulunduğunuz anda (mevcut çalışma dizini) kadranını bulmak için:

\$ pwd. /

Yukarıdaki örnekte / - Argüman ekibi cD - aranan yol. Bu, taşımak istediğimiz dosya sisteminin yeridir. Bu durumda / - Mutlak yol, yolun kök dizinine göre gösterildiği anlamına gelir.

Mutlak yollar

İşte bazı mutlak yollardan örnekler

/ Dev / usr / usr / bin / usr / local / bin

Fark edebileceğiniz gibi, tüm bu yollar ne başladıklarını birleştiriyor / . Yol / USR / Yerel / Bin'i komut argümanı olarak işaretleme cD Ona kök dizinine gitmesini söyledik / , sonra USR dizinine, daha sonra yerel ve çöp kutusuna. Mutlak yollar her zaman başlar /

Göreceli yollar

İkinci tip yolların göreceli olarak adlandırılır. Baskın, takım cD Ve diğer komutlar bu yolları geçerli dizinle ilgili olarak sayar. Göreceli yollar asla başlamaz / . Örneğin, / usr'daysak

\$ cD / USR.

Sonra göreceli yolu kullanarak / usr / local / bin'e gidebiliriz.

\$ cD Yerel / Bin \$ pwd. / USR / Yerel / Bin

".."

Göreceli yollar bir veya daha fazla dizin içerebilir «..» . ".." Ebeveyn dizini çalışma dizinimize göre gösterir. Misal:

\$ pwd. / Usr / local / bin \\ $ cD .. \$ pwd. USR / Yerel

Takımı nasıl görüyorsun? cD .. 'Bizi yukarıda yükselir'.

Ekleyebilir .. göreceli yola. Bu, bulunduğumuz bir seviyede bulunan dizine geçecektir. Misal:

\$ pwd. USR / Yerel \\ $ cD ../share. \$ pwd. USR / Paylaş

Göreceli yolları kullanarak örnekler

Göreceli yollar oldukça karmaşık olabilir. İşte bazı örnekler. Komutların yürütülmesinin sonucu gösterilmez, hangi dizini bash kullanarak bulacağınızı belirlemeye çalışın.

\$ cD / çöp kutusu. \$ cd ../usr/share/zoneinfo. \$ cD / USR / X11R6 / bin \$ cd ../lib/x11 \$ cD / USR / bin \$ cd ../bin/../bin.

Çalışma dizini "."

Takım hakkında konuşmayı bitirmeden önce cDBirkaç şeyden bahsetmelisin. İlk olarak, başka bir özel rehber var «.» bu geçerli dizini gösterir. Bu dizin, geçerli dizinde bulunan yürütülebilir dosyaları çalıştırmak için kullanılır.

\$ ./myprog.

MyProg'un en son örneğinde, bu çalıştırılabilir dosya piyasaya sürülecek geçerli dizinde bulunur.

cD ve Ana Sayfa Dizini

Giriş dizinine gitmek için arama yapmanız gerekir

\$ cD

CD argümanı olmadan, sizi ana dizinine taşır. Bir süper kullanıcı için, ev genellikle dizin / kök ve sıradan kullanıcılar için - / home / username /. Fakat ya ev dizininde bulunan belirli bir dosyayı belirtmek istiyorsak. Örneğin, programın bir argümanı olarak 'Myprog'? Yazabilirsin:

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

Ancak, dosyalara mutlak yolları kullanın Her zaman uygun değildir. Bu işlem ile yapılabilir ~ -Tilds:

\$ ./myprog ~ / myfile.txt

~ - Kullanıcının ana dizininde Bash'i gösteren özel ad.

Diğer kullanıcıların ana rehber

Fakat ya da başka bir kullanıcının ana dizininde dosyayı belirlememiz gerekirse? Bunu yapmak için, Tilde'den sonra, bu kullanıcının adını belirtmeniz gerekir. Örneğin, Fred'in ana dizininde bulunan fredsfile.txt dosyasını belirlemek için:

\$ ./myprog ~ fred / fredsfile.txt

Takımlar Linux

LS'ye giriş.

Muhtemelen ekibe zaten aşinasınız ls.Argümanlar olmadan neden olur, çalışma dizininde depolanan dosyaların bir listesini görüntüler:

\$ cD / USR. \$ ls. X11R6 DOC I686-PC-Linux-GNU Lib Adam Sbin SSL Bin Gentoo-X86 Libexec Portage Paylaş TMP DistFiles I686-Linux Bilgisi Yerel Portage.old SRC

Seçeneği belirtirseniz -a.Gizli de dahil olmak üzere tüm dosyaları görebilirsiniz (isimleri bir nokta ile başlar).

\$ ls -a. . Bin Gentoo-X86 Libexec Portage Paylaş TMP .. DistFiles I686-Linux Bilgi Yerel Portage.old SRC X11R6 DOC I686-PC-Linux-GNU Lib Adam Sbin SSL

Dizinlerin Detaylı Listesi

Ekibin kendisinden sonra ls. Bir veya daha fazla dosya veya dizinini argümanı olarak belirleyebilirsiniz. Dosyanın adını belirtirseniz, o zaman komut ls. Bilgileri yalnızca bu dosya hakkında görüntüler. Ve dizinin adını belirlerseniz, ls. Tüm içeriğini gösterecektir. Seçenek '-L' Takımlar ls. Dosya adları dışında onlar hakkında diğer bilgileri istiyorsanız çok yararlıdır (dosyanın hakları, sahibinin adı, zamanın adı son değişiklik Dosya ve boyutu).

Aşağıdaki örnek, seçeneğin uygulanmasını gösterir. '-L' / USR dizininde depolanan dosyalar hakkında bilgi görüntülemek için

\$ ls -L / usr DRWXR-XR-X 7 Kök Kök 168 Kas 24 14:02 X11R6 DRWXR-XR-XR-X1 Kök Kök 14576 Aralık 27 08:56 Bin Drwxr-XR-XR 2 Kök Kök 8856 Aralık 26 12:47 DistFiles LRWXRWXRWX 1 Kök Kökü 9 Ara 22 20:57 Doktor -\u003e Paylaş / DOC DRWXR-XR-XR-XR 62 Kök Kök 1856 Aralık 27 15:54 Gentoo-X86 DRWXR-XR-X86 DRWXR-XR-X 4 Kök Kök 152 Aralık 12 23:10 I686-Linux Drwxr-XR-X 4 Kök Kök 96 Kas 24 13:17 I686-PC-Linux-GNU DRWXR-XR-XR-54 Kök Kök 5992 Aralık 24 22:30 Dahil Lrwxrwxrwx 1 Kök Kök 10 10 Aralık 20:57 Bilgi -\u003e Paylaş / Bilgi Drwxr-XR -X 28 Kök Kök 13552 Aralık 26 00:31 Lib Drwxr-XR-XR 3 Kök Kök 72 Kasım 25 00:34 Libexec Drwxr-XR-XR 8 Kök Kök 240 Aralık 22 20:57 Yerel LRWXRWXRWX 1 Kök Kök 9 Aralık 22 20: 57 Adam -\u003e Paylaş / Man Lrwxrwxrwx 1 Kök Kök 11 Aralık 8 07:59 Portage -\u003e Gentoo-X86 / Drwxr-XR-X8 Kök Kök 1864 Aralık 8 07:55 Portage.old Drwxr-XR-XR 3 Kök Kök 3096 Aralık 22 20:57 Sbin Drwxr-XR-X6 Kök Kök 1144 Aralık 24 15:32 Paylaş Drwxr-XR-XR 8 Kök Kök 328 Aralık 26 00:07 SRC DRWXR-XR-X 6 Kök Kök 176 Kas 24 14: 25 SSL LRWXRWXRWX 1 Kök Kök 10 Aralık 22 20:57 TMP -\u003e ../var/tmp

İlk sütun, listedeki her dosyaya erişim hakları hakkında bilgi gösterir. (Biraz daha sonra, mektubun neyi gösterdiğini açıklayacağım) Aşağıdaki sütun, listenin her bir öğesine referans sayısını gösterir. Üçüncü ve dördüncü sütun, sırasıyla sahibi ve dosya grubudur. Beşinci Sütun - Boyut. Altı - son dosya değişikliği süresi ('son değiştirilmiş zaman' veya MTime). Son sütun, dosyanın veya dizinin adıdır (eğer bu bağlantı, sonra işaretten sonra ' –> 'Belirtildiği nesnenin adına mal olur).

Sadece Dizinler Nasıl Görülür?

Bazen, bilgileri yalnızca dizinle ilgili değil, tüm içerikleri hakkında değil. Bu görev ile seçeneği baş etmesine yardımcı olacaktır '-D'Bu, bilgiyi yalnızca dizinler hakkında görüntüleme komutunu gösterir. Misal:

\$ ls -dl / usr / usr / bin / usr / x11r6 / bin ../share DRWXR-XR-X 4 Kök Kök 96 Aralık 18 18:17 ../ Share Drwxr-XR-XR 17 Kök Kök 576 Aralık 24 09:03 / usr DRWXR-XR-X 2 Kök Kök 3192 Aralık 26 12:52 / usr / X11R6 / bin DRWXR-XR-X 2 Kök Kök 14576 Aralık 27 08:56 / USR / Bin

Özyinelemeli liste ve Exp

Eylem seçeneği '-R' Zıt eylem '-D'. Rehberdeki dosyalar hakkında bilgi görüntülemenizi sağlar. İlk önce dizinin içeriğini göster Üst düzey, Daha sonra tüm alt dizinlerin içeriğini ve benzeri içeriğini alın. Bu komutun çıktısı oldukça hacimli olabilir, bu yüzden örneğini incelemiyoruz, ancak yazarak kendiniz yapmayı deneyebilirsiniz. komut satırıls -r.'veya' ls -rl‘.

Ve sonunda, seçenek '-BEN' Her dosya sistemi nesnesinin frekansını çıkarmak için kullanılır.

\$ ls -i / usr 1409 314258 X11R6 I686-Linux LIBEXEC 43090 13394 SBIN 1417 1513 Bin I686-PC-Linux-GNU 5120 Yerel Paylaş 13408 8316 DistFiles 1517 Dahil Et 776 Adam SRC 23779 43 1386 DOC Portage Info 93892 36737 70744 SSL Gentoo-x86 1585 lib 5132 portage.old 784 TMP.

Kaynak nedir?

Her nesne sistemi nesnesi (dosya, dizin ...) kendi kendine sahiptir. benzersiz numara, aranan dosya numarası (İnode numarası). Bu bilgi önemsiz görünebilir, ancak gelirlerin işlevlerinin anlaşılması, dosya sisteminde birçok işlemi anlamanıza yardımcı olacaktır. Örneğin, bak «.» ve «..» Her dizinde mevcut olan referanslar gibi. Hangi dizinin temsil ettiğini anlamak için «..» , / kullanım / yerel dizini bulun

\$ lS -ID / USR / Yerel 5120 / USR / Yerel

Gördüğümüz gibi, yaklaşık olarak kod / usr / local - 5120. Şimdi hangi bilgileri / usr / local / bin / deposundan hangi bilgileri görelim:

\$ lS -ID / USR / Yerel / Bin / .. 5120 / USR / Yerel / Bin / ..

Direktör koltuklar / usr / local ve / usr / local / bin /. Bu, Ingot 5120'nin iki ismi ifade ettiği anlamına gelir: / usr / local ve / usr / local / bin / .. Yani, bunlar bir dizinin iki farklı adıdır. Her Asya, diskte belirli bir yeri gösterir.

Dosya sistemi nesnelerinin birden fazla adı, her bir inode ile ilişkilendirilebilir. 'Eşanlamlı' dosyasının sayısı (bir kodu ifade eden dosya sistemi nesneleri), komut çıktısının ikinci sütunundaki numarayı gösterir ' ls -l‘.

\$ lS -DL / USR / Yerel DRWXR-XR-X 8 Kök Kök 240 Aralık 22 20:57 / USR / Yerel

Bu örnek (ikinci sütun), 8 farklı dosya sistemi nesnesinin / usr / yerel dizinine atıfta bulunduğunu gösterir. İşte onların isimleri:

USR / Yerel / USR / Yerel /. USR / Yerel / Bin /. / Usr / local / lib / .. / usr / local / sbin / .. / usr / local / src / ..

mKDIR.

Takıma bakalım mKDIR.. Yeni dizinler yaratmaya yarar. Aşağıdaki örnekte / TMP dizininde üç yeni dizinin (TIC, TAC, TOE) oluşturulmasını göstermektedir.

\$ cD / TMP. $ mkdir tic tac toe

Varsayılan Ekip mKDIR. Yatırımlanmış bir dizin yapısı oluşturamaz. Bu nedenle, başka bir dizine birkaç gömülü bir tane oluşturmanız gerekirse ( oLAĞANÜSTÜ), sonra üç kez alternatif olarak bu komutu arayacaksınız:

\$ mkdir kazandı / der / ful MKDIR: "WON / DER / FUS" dizini oluşturulamıyor: Böyle bir dosya veya dizin \\ $ mkdir kazandı. \$ mKDIR WON / der \$ mkdir kazandı / der / ful

Seçeneği ekleyerek bu işlemi basitleştirebilirsiniz. '-P' MKDIR komutuna. Bu seçenek, ekli bir dizin yapısı oluşturmanıza olanak sağlar:

\$ mKDIR -P kolay / / turta

Bu yardımcı programın yeteneklerini öğrenmek daha fazlasını okuyun, komut tarafından denilen yardımı okuyun. adam mkdir. Yardım bu kılavuzdaki neredeyse tüm komutlardır (örneğin adam ls.), Dışında cDÇünkü Bash içine inşa edilmiştir (bu tür komutlar için, sertifika denir: yardım cd)

dokunma

Komutların çalışmasına dönüyoruz cp. ve mvDosya ve dizinleri kopyalama, yeniden adlandırma ve hareket ettirme hizmetleri. Ancak bundan önce, / TMP dizininde komutu kullanarak boş bir dosya oluşturalım. dokunma:

\$ cD / TMP. \$ dokunma Kopyma.

Takım dokunma Güncelleme zamanı son erişim dosyaya (altıncı sütun çıkışı komutu ls -l) Zaten varsa veya henüz yoksa yeni bir boş dosya oluşturur. Bu işlemden sonra boş bir dosya görünmeliyiz. / TMP / KOAPYME.

eko.

Şimdi boş bir dosyamız var, bir komut kullanarak içinde bir metin dizgisi yazın. eko.Bu, standart çıkış cihazına aktarılan argümanı görüntüler (durumumuzdaki metin terminali).

\$ echo "FirstFile" FirstFile.

Dizeyi dosyamıza kaydetmek için, komutun çıktısını yönlendirin. eko.:

\$ echo "FirstFile"\u003e Kopymete

İşaret > (daha fazla), komutun çıktısını dosyaya sola doğru yönlendirmeniz gereken komut kabuğunu belirtir. Aynı ada sahip dosya mevcut değilse, otomatik olarak oluşturulur. Ve eğer böyle bir dosya zaten oradaysa, üzerine yazılır (tüm içeriği satırımızı yazmadan önce silinir). Takım 'Ls -l' Dosyamızın büyüklüğünün şimdi 10 bayt'a eşit olduğunu gösterecek - dokuz bayt, 'FirstFile' kelimesini ve bir bayt, çeviri satırı için bir bayt sembolünü kaplar.

\$ ls -l Kopymet. -RW-R - R-- 1 Kök Kök 10 Aralık 28 14:13 Kopymet

kedi ve cp.

Dosyanın içeriğini terminale görüntülemek için komut kullanılır. kedi.:

\$ kedi Kopyası. FirstFile.

Şimdi ekibin temel işlevselliğinin analizine devam edebiliriz. cp.. Bu takım iki argüman alır. Birincisi, mevcut bir dosyanın adı ('Kopymet'), ikincisi yapmak istediğimiz yeni kopyanın adı ('COPIEDME').

\$ cpyme copiedme

Dosyanın yeni bir kopyasının başka bir kaynak numarası olduğundan emin olabiliriz (bu gerçekten yeni bir ayrı dosyaya sahip olduğumuz anlamına gelir ve sadece eskisine bir bağlantı değil)

\$ ls -i Kopyme KopyasıMe 648284 COPIEDME 650704 KOPYME

mv

Şimdi komutu uygula mv Dosyayı yeniden adlandırmak için ("COPIEDME" -\u003e "MOODEDME"). Bu işlemin ardından kaynak numarası değişmez ve yalnızca dosya adı değişir.

\$ mV COPIEDME MOODEDME. \$ ls -i movedme. 648284 Movedme

Kaynak numarası yalnızca yeniden adlandırılan dosya, kaynak dosyanın bulunduğu dosya sisteminin sınırları dahilinde kalırsa değişmez. Bu kılavuzun aşağıdaki bölümlerinden birinde dosya sistemlerinin ayrıntılarına bakacağız.

Takım mv Sadece dosyaları yeniden adlandırmayı, aynı zamanda bunları da değiştirmelerini sağlar. Örneğin, dosyayı hareket ettirmek için /Var/tmp/myfile.txt Dizinde / ev kullanıcısı Takıma vermeniz gerekiyor:

\$ mv /var/tmp/myfile.txt / ev / kullanıcı

Dosya kullanıcının ana dizinine taşınacak kullanıcı. Başka bir dosya sisteminde olsa bile (bu durumda, dosya, orijinalin silineceği yeni bir yere kopyalanır). Zaten tahmin edebileceğiniz gibi, dosyayı başka bir dosya sistemine taşımak, kaynağındaki bir değişikliğe yol açar. Bunun nedeni, her dosya sisteminin kendi ayrı sektörü setine sahip olmasıdır.

Not edilmeli, yeni bir değerlendirme prosedürünün eski ile çakışabileceği bir ihtimal var, ancak son derece küçük.

Aynı zamanda birden fazla dosyada birden fazla dosya yazmak için yazmanız gerekir:

\$ mv /var/tmp/myfile1.txt /var/tmp/myfile2.txt / ev / kullanıcı \$ mv -t / home / user /var/tmp/myfile1.txt /var/tmp/myfile2.txt

Seçenek ekle '-V'Ekran işlemin çalışması üzerinde gösterilecektir:

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

Linux'teki tüm dosyalar, Dosya Yöneticisi veya Konsol Yardımcı Programlarını kullanarak onlara erişebileceğimiz dosya sisteminde belirli bir adrese sahiptir. Bu oldukça basit bir konudur, ancak birçok yenilenme bu konuda zorluk çekiyor.

Günümüzün kısa notunda, Linux dosyasının yolunun ne olduğunu, nasıl doğru yazacağını, nasıl doğru ve çok daha fazlasını görünce bakacağız. Daha önce bu konuda zorluk çekmişseniz, makaleyi okuduktan sonra, her şey tamamen açık olacaktır.

Linux'ta Dosya Yolları

Linux dosya sistemi Windows'tan çok farklı. Yapısını düşünmeyeceğiz, daha önce yapıldı. Dosyalarla çalışmaya odaklanacağız.

En önemli fark, dosya adresinin diskten değil, örneğin C: \\ veya D: \\ 'nin Windows'ta ve kökten, diğerlerinin birbirine bağlandığı kök sistem dizininin nasıl gerçekleşmesidir. Onun adresi - /. Ve burada adresler hakkında söylemelisin. Linux dosya yolları, dizinleri adrese bölmek için düz bir "/" kullanın ve Windows'ta görmek için kullanıldığınızdan farklıdır.

Örneğin, eğer Pencereler tamamlandı Dosyanın masaüstündeki yolu C: \\ Users \\ Sergiy \\ Desktop \\ sonra Linux'daki dosya yolu sadece / home / sergiy / masaüstü /. Bununla, şimdiye kadar her şey basit ve anlaşılabilir. Ancak sorunlar daha da ortaya çıkıyor.

Linux işletim sistemi, dosyaya birkaç tür yol olabilir. Linux'teki yollar neler olduğuna bakalım:

  • Dosya sisteminin kökünden tam, mutlak yol Linux - Bu şekilde bu şekilde yukarıdaki örnekte gördünüz, "/" kökünden başlar ve tüm yolun tüm yolunu açıklar;
  • Göreceli Yol Linux - Bu, geçerli klasöre göre dosyanın yoludur, bu tür yollar sık \u200b\u200bsık karışıklığa neden olur.
  • Yol, geçerli kullanıcının ana klasörüne göre.- Dosya sistemindeki yol, kökten değil, geçerli kullanıcı klasöründendir.

Şimdi bu yolların Linux'ta nasıl göründüğünü daha ayrıntılı olarak düşünün ve ayrıca birkaç örneği de analiz edeceğiz, böylece nihayet anlaşılır. Göstermek için katalogların içeriğini görüntülemek için tasarlanmış olan LS yardımcı programını kullanıyoruz.

Örneğin, içinde dört dosya ile ana klasörde böyle bir dizinimiz var:

Bu, dosyalardan birine tam Linux yolu gibi görünecek:

lS / Home / Sergiy / TMP / Dosya1

Bu, zaten ana klasörden başlayan göreceli yol Linux'udur, ~ /. BİLDİRİM, ~, yani ~ /. Sonra zaten alt klasörleri belirleyebilir, bizim durumumuzda TMP:

Peki ya da dosyanın yolu, geçerli klasöre göre:

İlk bağlantı, geçerli klasörü (.), İkinci (..) yukarıdaki klasör seviyesini gösterir. Bu, kataloglara gezinmek için daha da fazla fırsat açar. Örneğin, geçerli klasördeki dosyaya başvurmak için tasarımı kullanabilirsiniz:

Dosyanın içeriğini görüntülerken işe yaramaz. Ancak programı yürütürken çok önemlidir. Program önce yol ortamında aranacağından ve yalnızca bu klasörde aranır. Bu nedenle, geçerli klasördeki programı çalıştırmanız gerekirse ve tıpkı / bin dizininde olduğu gibi, ardından dosyanın geçerli klasörde arama yapması gereken açık bir bağlantı olmadan çalışmaz.

Bu yapılar programları derlerken sıklıkla ortaya çıkabilir. Linux dosyalarının tüm bu sembolleri ve yolları sadece terminalde değil, aynı zamanda herhangi birinde de kullanılabilir. dosya yöneticisiNe çok uygun olabilir.

Ancak Linux terminali daha da büyük fırsatlar sunar. Doğrudan dosya veya dizinlerde basit yedek sembolleri kullanabilirsiniz. Örneğin, F ile başlayan tüm dosyaları geri çekebilirsiniz:

Veya sadece TMP klasöründe değil, ev klasörünün herhangi bir alt klasöründe bile arama yapabilirsiniz:

Ve tüm bunlar işe yarayacak, belki de her zaman gerekli değildir ve pratik değildir. Ancak bazı durumlarda çok yardımcı olabilir. Bu fonksiyonlar bash kabuk seviyesinde uygulanır, böylece bunları herhangi bir komuta uygulayabilirsiniz. Kabuk, kaç dosyanın bulunduğuna ve her biri için ekibe neden olur.

sonuç

Bu kadar. Artık ihtiyacınız olan her şeyi biliyorsunuz, sadece Linux dosyasına giden yolu doğru bir şekilde yazmak için değil, aynı zamanda Dosyaları aramak veya CD komutunu kullanarak dizini gezinmek gibi daha karmaşık eylemler gerçekleştirin. Herhangi bir sorunuz varsa, yorumlarda sorun!

İlgili Kayıtlar: