Bu , üst dizinin foo.cbulunduğu yeni dizine taşınacaktır .bazbar
mv foo.c `mkdir -p ~/bar/baz/ && echo $_`
-pSeçeneği için mkdirgerektiği gibi ara dizinleri yaratacaktır.
olmadan-pYol önekindeki tüm dizinler zaten var olmalıdır.
Geri dönüşlerin içindeki her şey ``yürütülür ve çıktı komutunuzun bir parçası olarak satır içinde döndürülür.
Yana mkdirsadece çıkış, bir şey dönmez echo $_komutuna eklenecektir.
$_son argümanı daha önce yürütülen komuta referanslar.
Bu durumda, yeni dizininizin ( ~/bar/baz/)mkdir komuta .
Bir hedef vermeden bir arşivin sıkıştırmasını açtım ve geçerli dizim dışındaki tüm dosyaları
demo-app.zipadlı yeni bir dizine taşımak istedim
demo-app.
Aşağıdaki satır hile yapar:
mv `ls -A | grep -v demo-app.zip` `mkdir -p demo-app && echo $_`
ls -Agizli dosyalar dahil tüm dosya adlarını döndürür ( örtük .ve.. ).
Boru sembolü |, lskomutun çıktısını grep( bir komut satırı, düz metin arama yardımcı programı ) borulamak için kullanılır . Bayrak yönlendirir bulup hariç tüm dosya adlarını dönmek için .
Bu dosya listesi, komut satırımıza move komutunun kaynak bağımsız değişkenleri olarak eklenir . Hedef bağımsız değişken, kullanarak ve çıktı kullanılarak başvurulan yeni dizinin yoludur .
-vgrepdemo-app.zip
mvmkdir$_echo