اطلاعیه

بستن
هنوز اطلاعیه ای در دست نیست.

دستور پیشرفته Copy در لینوکس جهت نمایش میزان پیشرفت کپی

بستن
X
 
  • فیلتر کردن
  • زمان
  • نمایش
Clear All
پست های جدید

    دستور پیشرفته Copy در لینوکس جهت نمایش میزان پیشرفت کپی

    دستور کپی پیشرفته (Advanced-Copy) یک برنامه بسیار قدرتمند در لینوکس میباشد که شباهت های بسیار زیاد به دستور cp دارد اما ورژن کمی تغییر یافته از ورژن اورجینال دستور cp میباشد. این ورژن تغییر یافته یک نوار میزان درصد پیشرفت کپی در طول کل مدت زمان مورد نظر برای کامل شدن پروسه به هنگام کپی کردن فایل های بزرگ از یک مسیر به جای دیگر اضافه کرده است. این قابلیت اضافه بسیار مفید است خصوصا هنگام کپی کردن فایل های بزرگ که به کاربر وضعیت پروسه کپی و مدت زمان باقی مانده را نمایش میدهد.
    دستور copy در لینوکس







    دانلود و نصب Advanced-Copy :

    ابزار advanced-copy را در سیستم های لینوکسی را به دو شیوه میتوان نصب کرد. یکی از طریق کامپایل از source و دیگری استفاده از Binari های از قبل کامپایل شده که همیشه به درستی کار میکنند و در حقیقت تجربه کمتری نسبت به روش کامپایل از سورس دارند و برای مبتدیان لینوکس بسیار موثر میباشد.

    اما من به شخصه به شما پیشنهاد میکنم که از source کامپایل کنید. برای این منظور شما نیاز به ورژن اورجینال GNU coreutils و آخرین patchfile از advanced-copy دارید. نصب کامل باید طبق موارد مطرح شده در زیر باشد :



    روش 1 : کامپایل از source

    ابتدا آخرین ورژن GNU coreutils و patchfile با استفاده از دستور wget دانلود و همچنین با استفاده از دستورات دیگر که در زیر نمایش داده شده کامپایل و patch کنید. به منظور اجرای تمامی کامندها باید با یوزر root لاگین باشید :
    کد PHP:
    # wget http://ftp.gnu.org/gnu/coreutils/coreutils-8.21.tar.xz
    # tar xvJf coreutils-8.21.tar.xz
    # cd coreutils-8.21/
    # wget http://linux-zone.org/forums/upload/software/advcpmv-0.5-8.21.patch
    # patch -p1 -i advcpmv-0.5-8.21.patch
    # ./configure
    # make 
    در هنگام اجرای دستور ./configure ممکن است با error زیر روبه رو شوید :
    کد PHP:
    checking whether mknod can create fifo without root privileges... configureerrorin `/home/tecmint/coreutils-8.21': configure: error: you should not run configure as root (set FORCE_UNSAFE_CONFIGURE=1 in environment to bypass this check) See `config.log' for more details 
    برای رفع error بالا دستور زیر را اجرا کنید و سپس دوباره دستور configure را وارد نمایید :
    کد PHP:
    export FORCE_UNSAFE_CONFIGURE=
    بعد از اتمام کامپایل 2 دستور جدید تحت src/cp و src/mv ایجاد میشوند. شما باید دستورات اورجینال cp و mv خود را با این دو دستور جدید جایگزین کنید تا به هنگام پروسه کپی نوار میزان درصد پیشرفت نمایش داده شود.
    کد PHP:
    # cp src/cp /usr/local/bin/cp
    # cp src/mv /usr/local/bin/mv 


    روش 2 : نصب از طریق باینری ها از پیش کامپایل شده

    در این روش به جای کامپایل از سورس شما باید باینری های از پیش کامپایل شده را در سیستم عامل لینوکس تان و با استفاده از دستور wget دانلود کنید :
    کد PHP:
    # wget http://zwicke.org/web/advcopy/advcpmv-0.5-8.21-static.tar.xz
    # tar xvJf advcpmv-0.5-8.21-static.tar.xz 
    بعد از exteract کردن، در دایرکتوری advcpmv-0.5-8.21-static دو برنامه جدید ایجاد میشوند. شما باید این دو دستور را با دستورات cp و mv اورجینال جایگزین کنید :
    کد PHP:
    # cp advcpmv-0.5-8.21-static/cp /usr/local/bin/cp
    # cp advcpmv-0.5-8.21-static/mv /usr/local/bin/mv 
    توجه : اگر شما نمیخواهید این دستورها تحت مسیرهای استاندارد سیستم کپی شوند شما همچنان میتوانید آنها را از دایرکتوری source مانند ./cp و ./mv اجرا کنید.



    نوار اتوماتیک میزان درصد کپی :

    اگر شما میخواهید نوار درصد کپی همیشه به هنگام کپی کردن ظاهر شود شما باید خط هایی زیر را به فایل ~/.bashrc اضافه کنید و بعد از ذخیره فایل را ببندید :
    کد PHP:
    alias cp='cp -gR'
    alias mv='mv -g' 
    به منظور اعمال تغییر بالا شما باید یک بار logout و مجددا login کنید.



    چگونه از دستور advanced-copy استفاده کنیم :

    دستور یکسان میباشد تنها تغییر اضافه کردن آپشن -g یا --progress-bar با دستور cp میباشد. آپشن -R به منظور کپی کردن دایرکتوری ها و به صورت recursively میباشد مثال زیر یک نمونه از پروسه کپی با استفاده از دستور advanced-copy میباشد :
    کد PHP:
    # cp -gR /Tecmint.com/ /data/

    OR

    # cp -R --progress-bar /Tecmint.com/ /data/ 
    دستور advance copy در لینوکس






    advance copy command in linux







    نمونه زیر مثالی از دستور mv به همراه screen-shot از خروجی دستور میباشد :
    کد PHP:
    # mv --progress-bar Songs/ /data/

    OR

    # mv -g Songs/ /data/ 
    نمایش میزان پیشرفت دستور copy در لینوکس







    لطفا توجه داشته باشید دستورات اوجینال overwritten نمیشوند. اگر شما بخواهید از آنها استفاده کنید و یا از نوار درصد پیشرفت کپی خوش تان نیامد و یا به هر دلیل دیگری خواستید به دستورات cp و mv اورجینال برگردید میتوانید از طریق /usr/bin/cp یا /usr/bin/mv آنها را فرا خوانید.

    من به شخصه از قابلیت نوار پیشرفت کپی لذت بردم. از آنجایی که اطلاعاتی درباره زمان عملیات کپی و اینکه دقیقا چه اتفاقی در حال روی دادن است به من نشان میدهد.

    به صورت کلی میتوان گفت که این ابزار یکی از بهترین هاست خصوصا زمانی که شما زمان فراوانی را برای کپی و انتقال فایل ها از طریق command line صرف میکنید.


    همچنین توصیه میشود مطالعه کنید :

    دستور pv برای مانیتور روند کپی، بک آپ و فشرده سازی اطلاعات در لینوکس

    pscp - انتقال/کپی فایل ها به چندین سرور لینوکس با استفاده از تنها یک شل

    10 نمونه از دستورات sFTP برای انتقال فایل ها روی سرورهای لینوکس راه دور

    10 نمونه از دستور scp برای انتقال فایل ها و فولدرها در لینوکس

    10 مثال از دستور Rsync در لینوکس

    دستورات nc و pv برای انتقال فایل ها بین دو کامپیوتر



    موفق باشید
    محمد هابیلی
    آخرین ویرایش توسط Habili; در تاریخ/ساعت 11-05-2021, 12:32 AM.

    #2
    سلام
    ممنون اما در دانلود فایل مشکل وجود دارد
    404

    کامنت


      #3
      سلام . لینک رو ویرایش کردم. مجددا تست بگیرید.

      کامنت

      درباره انجمن منطقه لینوکسی ها

      انجمن منطقه لینوکسی ها با هدف ارتقاء سطح علمی کاربران در سطح جهانی و همچنین کمک به بالا بردن سطح علمی عمومی در زمینه های تخصصی فوق پایه گذاری شده است. انجمن منطقه لینوکسی ها از طریق کارشناسان و متخصصان پاسخگوی سوالات گوناگون کاربران مبتدی یا پیشرفته میباشد تا حد امکان تلاش شده که محیطی متنوع و کاربر پسند و به دور از هرگونه حاشیه جهت فعالیت کاربران در این انجمن ایجاد شود. لذا ما به صورت مستمر برای پیشرفت کمی و کیفی محتوی و اطلاعات انجمنمان میکوشیم که این برای ما ارزشمند و حائز اهمیت است. کلیه حقوق،اطلاعات و مقالات در این انجمن متعلق به سایت منطقه لینوکسی ها میباشد، و هرگونه نسخه برداری بدون ذکر منبع مورد پیگرد قانونی خواهد شد.

      شبکه های اجتماعی
      در حال انجام ...
      X