نقل كافة الملفات من الدلائل خطوة واحدة لأعلى

StackOverflow https://stackoverflow.com/questions/628617

  •  06-07-2019
  •  | 
  •  

سؤال

ولدي الدلائل التي تبدو مثل هذا

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 .
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top