نقل كافة الملفات من الدلائل خطوة واحدة لأعلى
سؤال
ولدي الدلائل التي تبدو مثل هذا
fool@brat:/mydir/ucsc_mm8> tar -xvf *.tar
1/chr1.fa.masked
1/chr1_random.fa.masked
2/chr2.fa.masked
3/chr3.fa.masked
4/chr4.fa.masked
5/chr5.fa.masked
5/chr5_random.fa.masked
19/chr19.fa.masked
Un/chrUn_random.fa.masked
ما أريد القيام به هو الخروج كافة الملفات "* .masked" في /1
الدلائل تصل /Un
.
هل هناك طريقة التعاقد للقيام بذلك في لينكس / يونكس؟
المحلول
ووسيلة نموذجية لنقل الملفات كل الملفات المطابقة تعبير معين هو
mv 1/*.masked targetDir
وحيث TARGETDIR يمكن أن يكون ..
إذا كنت تريد تحريكه من الدلائل 1،2،3 ثم يمكنك أن تفعل شيئا مثل
mv */*.masked targetDir
وأو، إذا كنت تريد أن تتحرك على وجه التحديد أنه من الدلائل مرقمة، يمكنك تشغيل فقط شيء من هذا القبيل
mv [0-9][0-9]/*.masked targetDir
نصائح أخرى
والعديد من قذائف يونيكس دعم المشغل * في الجزء دليل الطريق أيضا. الأعمال التالية في باش، وعلى الأقل zsh:
ls */*.masked
وهذا سيعود كافة الملفات التي تنتهي في .masked دليل واحد أعمق.
وذلك لنقلها:
mv */*.masked destination
mv */*.masked .
لا تنتمي إلى StackOverflow