Cp සමඟ ලිපිගොනු පිටපත් කිරීමේදී හුවමාරු ප්‍රගතිය සහ වේගය පෙන්වන්නේ කෙසේද?


360

එසේ නොමැතිනම් මෙය සාක්ෂාත් කරගත හැකි විකල්ප විධාන රේඛා උපයෝගීතාවයක් තිබේද?


Answers:


273

අතර cpමෙම ක්රියාකාරිත්වය ලැබුණේ නැහැ, ඔබ භාවිතා කළ හැකිය pvමෙය කිරීමට:

pv my_big_file > backup/my_big_file

සටහන: මෙම ක්‍රමය මඟින් ගොනුවේ අවසර සහ හිමිකම අහිමි වේ. මේ ආකාරයෙන් පිටපත් කරන ලද ලිපිගොනු වලට ඔබ විසින්ම නිර්මාණය කර ඇති අතර ඔබට අයිති වනු ඇත.

මෙම උදාහරණයේ දී, pvමූලික වශයෙන් ඔබ ගොනුව stdout * වෙත ප්‍රතිදානය කරයි, එය ඔබ >ක්‍රියාකරු භාවිතා කරමින් ගොනුවකට හරවා යවයි . ඊට සමගාමීව, ඔබ එය කරන විට එය පර්යන්තය වෙත ප්‍රගතිය පිළිබඳ තොරතුරු මුද්‍රණය කරයි.

මෙය පෙනෙන්නේ මෙයයි:

stefano@ubuntu:~/Data$ pv my_big_file > backup/my_big_file
 138MB 0:00:01 [73.3MB/s] [=================================>] 100% 

ඔබේ පද්ධතියේ  pv ස්ථාපනය කිරීමට ඔබට අවශ්‍ය විය හැකිය (විකල්පයක් ලෙස ටයිප් කරන්න sudo apt-get install pv).


*: තාක්ෂණික බිට්

යුනික්ස් වැනි පද්ධතියක වැදගත් දත්ත ප්‍රවාහ තුනක් ඇත: stdout (සම්මත ප්‍රතිදානය), stderr (සම්මත දෝෂය) සහ stdin (සම්මත ආදානය). සෑම වැඩසටහනකටම මේ තුනම ඇත. මෙම >හරවා යැවීමේ ක්රියාකරු ගොනුවකට වැඩසටහන නිෂ්පාදනය යළි-යොමුකරයි. තර්ක නොමැතිව, ඔබ ඉහත දකින පරිදි, >වැඩසටහනක සම්මත ප්‍රතිදානය ගොනුවකට හරවා යවයි . cpමූලික වශයෙන් ඊට වඩා විනෝදජනක කිසිවක් නොකරයි

cat source > destination

(එහිදී catගොනුවක් කියවා එය stdout වෙත මුද්‍රණය කරයි). pvහරියට බළලා වගේ, නමුත් ඔබ එහි ප්‍රතිදාන ප්‍රවාහය වෙනත් තැනකට හරවා යැවුවහොත්, එය ප්‍රගති තොරතුරු ඒ වෙනුවට stdout වෙත මුද්‍රණය කරයි.

man pvගැන වැඩි විස්තර දැන ගැනීමට බලන්න.


මෙම පිළිතුරේ alt පෙළDoR යෝජනා කරන පරිදි තවත් විකල්පයක් වන්නේ ඒ වෙනුවට rsync භාවිතා කිරීමයි:

$ rsync -ah --progress source-file destination-file
sending incremental file list
source-file
        621.22M  57%  283.86MB/s    0:00:01

මෙය ප්‍රගතිය පෙන්වන අතර ලිපිගොනු අවසර / හිමිකාරිත්වය ආරක්ෂා කරනු ඇත.


3
එය සැලකිය යුතු හෝ නොවිය හැකිය (තත්වය අනුව), නමුත් pvඅවසරයන් ඒ ආකාරයෙන්ම හැසිරෙන්නේ cpනැත ... (මම උත්සාහ කළ එක් ඉක්මන් පරීක්ෂණයක් මත පදනම්ව: pvක්‍රියාත්මක කිරීමේ බිට් එක හරහා පිටපත් rsyncනොකළේය .. කළා.
පීටර් .O

50
IMO: alias cp="rsync -avz"cp යල් පැන ගිය එකක්.
මාකෝ සෙපී

11
ඔබ මට වගේ ඉන්නේ, ඒ වගේම අමතක කරන්න නම් pv, ඔබ තුළ snooping යන්න පුළුවන් /proc/PID of cp/fdසහ /proc/PID of cp/fdinfoප්රගතිය හොයාගන්න. (වේගය අනුමාන කිරීම ඔබට භාරයි.) මම මෙම තාක්ෂණය නැරඹීමට භාවිතා කරමි updatedb.
තනාටෝස්

11
ඔව්, -zබොහෝ විට භාවිතා කළ යුත්තේ ජාල පිටපත් සඳහා පමණි; දේශීය පිටපතක් සඳහා දත්ත සම්පීඩනය හා විසංයෝජනය කිරීම පිරිසිදු පොදු කාර්යයකි.
මතෙව්

3
ArMarcoCeppi, නාමාවලිය පිටපත් කිරීමේදී ප්‍රභව මාර්ගයට ලුහුබැඳීම් rsyncඑක් නොකිරීමට වග බලා ගන්න /(හෝ උදා. එසේ නොමැතිනම් cp(හෝ gcp) භාවිතා කරන විට වඩා වෙනස් ප්‍රති results ල ඔබට ලැබෙනු ඇත .
Piotr Findeisen

210

නැත. එයට හේතුව ලෙස මෙහි බලන්න . එය ඔබට අවශ්ය වඩා වැඩි යමක් වුවද, rsyncසතුව --progressපරාමිතිය. මෙම -aආදිය, අවසර තබා ඇත, සහ -hමානව කියවිය හැකි වනු ඇත.

rsync -ah --progress source destination

ප්‍රතිදානය මේ වගේ දෙයක් වනු ඇත:

Pictures/1.jpg
      2.13M 100%    2.28MB/s    0:00:00 (xfr#5898, to-chk=1/5905)
Pictures/2.jpg
      1.68M 100%    1.76MB/s    0:00:00 (xfr#5899, to-chk=0/5905)

6
වර්තමාන උබුන්ටු (14.10) හි මෙය විශිෂ්ට ලෙස ක්‍රියා කරයි. -rනාමාවලි නැවත ලබා ගැනීම සඳහා එය ධජයට සහය දක්වයි . alias cp="rsync -ah --progress"
Cp

4
මම මෙම විකල්පය pv ට වඩා හොඳට කැමතියි, විශේෂයෙන් rsync සම්මත ස්ථාපනයෙහි කොටසක් වන නිසා
Joao Costa

3
@bartekbrak බෙදාගැනීම ගැන ස්තූතියි. මම දැනට මැකෝස් 10.12.x හි rsync 3.1.2 හි හෝම්බ rew අනුවාදය ධාවනය කරමින් --progressසිටිමි. එබැවින් AOL rsync -ah --info=progress2 [source] [destination] යතුරුපද සෙවුම් වලින් මෙහි පැමිණෙන අය, ප්‍රතිදානය මඳක් ane‍⚕️ ආකාරයෙන් IMHO ඉදිරිපත් කරයි.
ipatch

3
අවාසනාවකට මෙන්, බොහෝ කුඩා ගොනු පිටපත් කිරීමේදී ප්‍රතිදානය එතරම් ප්‍රයෝජනවත් නොවේ.
රෆායෙල්

3
@ රෆායෙල්, ඇත්ත, ඒ නිසා ඔබ ඔවුන්ගේ අදහස් දැක්වීමේදී @ipatch යෝජනා කළ ආකාරයට --info=progress2වඩා භාවිතා කළ යුතුයි--progress
සැකරි රම්සි

91

ඔබේ ලිපිගොනු නිවැරදිව මාරු වන්නේ දැයි බැලීමට ඔබට අවශ්‍ය නම් එය භාවිතා කළ හැකි gcpඅතර gcpඑය සීපී වැනි ය. එහෙත් පෙරනිමියෙන් ඔබට ප්‍රගති තීරුවක් ලබා දෙන අතර එමඟින් පිටපත් කරන්නේ කුමක් දැයි ඔබට දැකගත හැකිය. වැඩසටහනේ විකී සටහන්gcp කර ඇති පරිදි , වැනි ප්‍රයෝජනවත් අංග කිහිපයක් ඇත

  • හුවමාරු ප්‍රගති දර්ශකය
  • දෝෂ මත අඛණ්ඩව පිටපත් කිරීම (ඊළඟ ගොනුව වෙත යන්න)
  • පිටපත් කිරීමේ තත්ව ලොග් වීම: gcp එහි සියලු ක්‍රියා ලොග් කරයි, එවිට කුමන ගොනු සාර්ථකව පිටපත් කර ඇත්දැයි දැනගත හැකිය
  • ඉලක්ක ගොනු පද්ධති සීමාවන් හැසිරවීමට නම මැන්ග්ලිං (නිදසුනක් ලෙස නොගැලපෙන අක්ෂර "*" හෝ "?" FAT මත මකා දැමීම).

කෙසේ වෙතත්, මෙවලම භාවිතා කරන විට ප්‍රගති තීරුව 100% ක් කරා ළඟා වූ විට පවා, ඔබේ මාධ්‍යය ආරක්ෂිතව ඉවත් කිරීමට පෙර ඔබේ පර්යන්ත විමසුම නැවත දිස්වන තෙක් ඔබ බලා සිටිය යුතුය, එවිට ඔබට මාරුවීමේ ක්‍රියාවලිය සාර්ථකව අවසන් වී ඇති බව සහතික කළ හැකිය.

gcpලිපිගොනු පිටපත් කිරීම සඳහා භාවිතා --preserveකරන අතර විවිධ ගුණාංග සහ අවසරයන් ආරක්ෂා කර ගත හැකි වන අතර --recursiveඑමඟින් සම්පූර්ණ නාමාවලි පිටපත් කළ හැකිය. උබුන්ටු මෑන්පේජ් මාර්ගගතව ඇතුළු වීමෙන් man gcpහෝ එහි විකල්පයන් පිළිබඳ වැඩි විස්තර සොයාගත හැකිය . මෙම වෙබ් අඩවියේ නිබන්ධනයක් ද ඇත .

gcpසමඟ නිධි වලින් ස්ථාපනය කරන්න

sudo apt-get install gcp

( සටහන : උබුන්ටු 12.10 හි නව ස්වයංක්‍රීය ලක්ෂ්‍යය උදාහරණයක් ලෙස /media/user/usbdisk)

ඇතුළත් කිරීමෙන් ඔබට ගොනුවක් ඔබේ මාධ්‍යයට පිටපත් කළ හැකිය

gcp /home/mike/file.mp4 /media/usb

සමඟ ඔබේ මාධ්‍යයට ෆෝල්ඩරයක් පිටපත් කරන්න

gcp -rv ~/Podcasts /media/Mik2

gcpප්‍රගති තීරුව සමඟ නියැදි ප්‍රතිදානය :

gcp ~/Videos_incIplayer/mars.flv /media/Mik2
Copying 168.57 MiB 100% |########################################################|   7.98 M/s Time: 00:00:22

ඔබේ තැටියට පිටපත් කිරීම සඳහා ඔබට බොහෝ ගොනු හෝ ෆෝල්ඩර නියම කළ හැකි අතර තවත් විකල්ප රාශියක් ආවරණය කර ඇත man gcp.


4
dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NotSupported: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
Ssh

3
ඔබට යන්ත්‍රයේ X11 සංදර්ශකයක් විවෘතව තිබේ නම් ඔබට export DISPLAY=:0.0gcp ආරම්භ කිරීමට පෙර සැකසිය හැකිය. යන්ත්‍රය හිස් නැතිනම් ඔබට අතථ්‍ය රාමු බෆරයකට හෝ වෙනත් දෙයකට xsession එකක් ආරම්භ කළ යුතුය, එම අවස්ථාවේදී ඔබ වෙනත් වැඩසටහනක් ගැන සොයා බැලිය යුතුය
user292067

2
gcpසෑහෙන්න විනීතයි නමුත් DBUS / X අවශ්‍යතාවය අමුතුයි. මම මෙය SSH හරහා හසුරුවනු ලැබුවේ ssh forwarding භාවිතා කරමිනි: ssh -X user@hostඑය මට එය ක්‍රියාත්මක කිරීමට ඉඩ දුන්නේය.
ඔලි

75

මෙම නිශ්චිත අරමුණ සඳහා කර්ල් භාවිතා කිරීමෙන් මට පයින් ගැසීමක් ලැබේ. මෑන් පිටුව "FILE" ප්‍රොටෝකෝලය සහය දක්වන ලෙස ලැයිස්තුගත කරයි, එබැවින් එය URL එකක ඇති වෙනත් ප්‍රොටෝකෝලයක් මෙන් භාවිතා කරන්න:

curl -o destination FILE://source

වේගය, ප්‍රගතිය, ඉතිරිව ඇති කාලය සහ තවත් බොහෝ දේ - සියල්ල හුරුපුරුදු ආකෘතියකින්.


2
නව මෙවලම් ස්ථාපනය කිරීම ඔබට තහනම් කර ඇති සහ rsync ලබා ගත නොහැකි පරිසරවල මෙය විශේෂයෙන් විශිෂ්ටයි.

7
දීප්තිමත්, මෙය අනිවාර්යයෙන්ම දැනගත යුතු කඩුල්ලක් විය යුතුය!
ionreflex

හොඳ පිළිතුරක්! දක්ෂයි!
9301293

මෙය අනුමාන වශයෙන් සමාන අඩුපාඩුවක් ඇත pv, එය අවසර සුරැකෙන්නේ නැත.
ප්ලොනි

1
මිහිරි! නාමාවලියක් සඳහා මෙම කාර්යය කිරීමට ක්‍රමයක් තිබේද?
ජෝශප් රජීව් මෝතා

29

එය වේගය නොපෙන්වන අතර, බහු ගොනු පිටපත් කිරීමේදී, විධානයට ඇති -vවිකල්පය cpමඟින් ඔබට ප්‍රගති තොරතුරු ලබා දෙනු ඇත. උදා

cp -rv old-directory new-directory

10
ප්‍රගති තොරතුරු? මෙය වාචික ප්‍රතිදානය පමණි. ප්‍රගති තොරතුරු සැපයීම සඳහා ඔබට අවම වශයෙන් දැන් ගොනු කීයක් හෝ කුමන ලිපිගොනු පවා පිටපත් කළ යුතුය.
ජූලියන් එෆ්. වයිනර්ට්

අඩු ඉල්ලුමක් ඇති අවස්ථාවන්හිදී එය ප්‍රමාණවත් විය හැකි ගොනුව එය පෙන්වයි.
ග්‍රින්ගෝ සුව්

26

progressවිවිධ විධානයන් පරීක්ෂා කර ඒවා සඳහා ප්‍රගති තොරතුරු ප්‍රදර්ශනය කළ හැකි මෙවලමක් ගබඩාවල ඇත.

විධානය භාවිතා කර එය ස්ථාපනය කරන්න

sudo apt-get install progress

මෙම මෙවලම ඒ ආකාරයෙන් භාවිතා කළ හැකිය:

cp bigfile newfile & progress -mp $!

ප්‍රතිදානය:

[11471] cp /media/Backup/Downloads/FILENAME.file 
        29.9% (24.2 MiB / 16 MiB)

මෙය 2019 දී මගේ මතය අනුව වඩාත්ම යාවත්කාලීන පිළිතුරයි.
mchid

20

කර්නලය වේගය වැනි බොහෝ දත්ත දන්නා අතර බොහෝ විට ප්‍රතිශතය ද වේ. නවීන කර්නල් ඔවුන්ගේ / proc ගොනු පද්ධතිය හරහා මෙය නිරාවරණය කරයි.

https://github.com/jnweiger/showspeed වෙතින් showpeed එම තොරතුරු භාවිතා කරයි. එයට දැනටමත් ක්‍රියාත්මක වැඩසටහන් වලට ඇමිණිය හැකි අතර වරින් වර යාවත්කාලීන කිරීම් ලබා දිය හැකිය:

$ dd if=bigfile of=/tmp/otherbigfile &
$ showspeed dd
dd looks like a process name. pid=4417 matches av0=dd.
p/4417/fd/0r /home/jw/bigfile 113MB/s (12%, 2.3GB)  9m:35
p/4417/fd/1w /tmp/otherbigfile 182MB/s (2.6GB)
p/4417/fd/0r /home/jw/bigfile 285MB/s (15%, 3.0GB)  8m:08
p/4417/fd/0r /home/jw/bigfile 115MB/s (16%, 3.2GB)  8m:01
p/4417/fd/0r /home/jw/bigfile 107MB/s (17%, 3.4GB)  7m:39
p/4417/fd/1w /tmp/otherbigfile 104MB/s (3.5GB)
p/4417/fd/0r /home/jw/bigfile 139MB/s (19%, 3.7GB)  7m:37
p/4417/fd/0r /home/jw/bigfile 116MB/s (20%, 3.9GB)  7m:18
p/4417/fd/1w /tmp/otherbigfile  67MB/s (4.0GB)
p/4417/fd/1w /tmp/otherbigfile 100MB/s (4.1GB)
...

කදිම එකක්. එය ප්‍රතිශතයක් වුවද කෙසේ ක්‍රියා කරයිද? මම හිතන්නේ කියවීමට පමණක් විවෘතව ඇති ලිපිගොනු වලදී පමණක්? විසිරී ගිය අවස්ථාවකදී එය ක්‍රියා නොකරනු ඇත.
j_kubik

1
මෙම අවස්ථාවේ දී ඔබට එහි තත්වය පෙන්වීම සඳහා ධාවනය pkill -USR1 ddකිරීමට තවත් පර්යන්තයක් භාවිතා කළ හැකිය dd, තවත් විකල්පයක් වන්නේ watch -n 1 pkill -USR1 ddවරින් වර (සෑම තත්පරයකම) එහි ප්‍රගතිය පෙන්වීමයි.
යාරොන්

හරි. කාලයාගේ ඇවෑමෙන් සංඛ්‍යාලේඛන වාර්තා කිරීම සඳහා බොහෝ මෙවලම් වලට ප්‍රබල ක්‍රමයක් තිබේ. dd ද ව්‍යතිරේකයක් නොවේ. නවීන ක්‍රියාත්මක කිරීම් වලට status = progess විකල්පයක් ඇත. ෂෝස්පීඩ් යනු සම්භාව්‍ය යුනික්ස් විලාසිතාවකි "එක් අරමුණක් සඳහා එක් මෙවලමක්" විසඳුමකි - පීවී මෙන්. නමුත් එයට වෙනස් භාවිත කේත ඇත: අවතාර පිටපත් හරහා ගොනුවක් පොම්ප කරන කෝප්ප ගැන සිතන්න, නැතහොත් අඛණ්ඩ සීපී හෝ තාර සඳහා ETA දැන ගැනීමට ඔබට අවශ්‍යය. එය පැය කිහිපයකට පසු දැනටමත් 95% ක් සිදු කර ඇති අතර pv එකතු කිරීම සඳහා එය නැවත ආරම්භ කිරීමට ඔබට අවශ්‍ය නොවනු ඇත ... විසිරුණු ප්‍රවේශය හොඳින් ක්‍රියා නොකරනු ඇත. ෂෝස්පීඩ් තනතුරු සොයන්නේ සාම්පල පමණි.
Jgenrgen Weigert

13

අතර pvදේශීය සමග ගනුදෙනු කළ හැකි cpකාර්යයන්, භාවිතා ddසමග pvදේශීය (සමග ගනුදෙනු කළ හැකි cp) හා දුරස්ථ ( scp) කාර්යයන්.

dd if=path/to/source.mkv | pv | dd of=path/to/dest.mkv

කරුණාකර path/to/dest.mkvපිටවීම සහතික කරන්නtouch path/to/dest.mkv

මෙය ප්‍රගතිය පෙන්විය හැකි නමුත් ඔබට ප්‍රතිශත තොරතුරු අවශ්‍ය නම්,

dd if=path/to/source.mkv | pv -s 100M | dd of=path/to/dest.mkv

100Mඔබේ මූලාශ්‍ර ගොනුවේ සැබෑ ප්‍රමාණය සමඟ ඉහත ප්‍රතිස්ථාපනය කරන්න .

මෙන්න දුරස්ථ කොටස පැමිණේ

අතර scpවත්මන් ප්රගතිය කිසිසේත්ම පෙන්වන්න පුළුවන්, භාවිතා ddසමග pvකේක් කෑල්ලක් වේ.

ssh onemach@myotherhost dd if=path/to/source.mkv | pv -s 100M | dd of=path/to/dest.mkv


11

ක්‍රියාත්මක වන විධානයකට අදාළ ඕනෑම විස්තරයක් සොයාගත හැකි සහ ප්‍රගතිය සහ වේගය පෙන්විය හැකි cv නමින් නව මෙවලමක් තිබේ: https://github.com/Xfennec/cv

cv -w

ක්‍රියාත්මක වන සියලුම සීපී, එම්වී ආදිය සඳහා සංඛ්‍යාලේඛන ප්‍රතිදානය කරයි


watch cv -qඊටත් වඩා පිළිවෙලයි
nwgat

එය පෙන්වන්නේ තනි ලිපිගොනු වල ප්‍රගතිය පමණි, එය cpඩිරෙක්ටරියක් පුනරාවර්තනය කරන්නේද නැද්ද යන්න වටහා ගනී .
Flimm

2
එය යුද්ධයේ ප්‍රගතිය ලෙස නම් කරන ලදී. නියම මෙවලමක්!
සෙබස්තියන්

9

බොහෝ දෙනා පැවසූ පරිදි, cp ට මෙම ක්‍රියාකාරීත්වය ඇතුළත් නොවේ.

මගේ $ 0.02 විසි කිරීමට, සුළු පිටපත් කිරීමේ තත්වයන් සමඟ මම සාමාන්‍යයෙන් කරන්නේ (එනම් නැත -R):

  1. ගොනුව කොතරම් විශාලදැයි බලන්න සහ මතක තබා ගන්න

  2. පිටපත් කිරීම ආරම්භ කරන්න

  3. තවත් පර්යන්තයක් විවෘත කරන්න

  4. watch ls -lh DIRඉලක්කය ඇති නාමාවලිය මත ධාවනය කරන්න

මෙය අවම කරදරයකින් තොරව ඉලක්ක ගොනු ප්‍රමාණයෙන් මා යාවත්කාලීන කළ හැකිය.

අඩු සුළු අවස්ථාවන් සඳහා විකල්පයක් ලෙස, උදා: පුනරාවර්තන ලෙස නාමාවලි පිටපත් කිරීම, ඔබට watch du -hs DIRDIR ප්‍රමාණයේ සාරාංශය බැලීමට භාවිතා කළ හැකිය. කෙසේ වෙතත් ඩු ගණනය කිරීමට බොහෝ කාලයක් ගත වන අතර පිටපත් කිරීම මන්දගාමී විය හැක, එබැවින් ඔබට -n INTERVALවෙළඳාම් කිරීම පිළිගත හැකි වන පරිදි නැරඹීම සඳහා තර්කය භාවිතා කිරීමට අවශ්‍ය විය හැකිය.

යාවත්කාලීන කිරීම: ඔබ වොච් ඩු සමඟ විධාන සහිත වල්-කාඩ් භාවිතා කරන්නේ නම්, උදා watch du -hs backup/*, උපුටා දැක්වීමට අමතක නොකරන්න:

watch "du -hs backup/*"

නැතිනම් වයිල්ඩ් කාඩ්පත් පුළුල් වන්නේ එක් වරක් පමණි , ඔරලෝසුව ආරම්භ කළ විට ඩු ​​නව ලිපිගොනු / උප බහලුම් දෙස නොබලනු ඇත.


"වේග" කොටසට පිළිතුරු සපයන්නේ නැත, නමුත් ...
ඇලෝයිස් මහඩාල්

8

ඔබ සතුව rsync 3.1 හෝ ඊට වැඩි ( rsync --version) තිබේ නම්, ඔබට අවසර සහ හිමිකාරිත්වය ආරක්ෂා කර ගනිමින් (cp -Rpn) පිටපත් කළ හැකිය, ඩිරෙක්ටරි, "ක්ලෝබර් නැත", සහ සමස්ත ප්‍රගතිය පෙන්විය හැකිය (ගොනුවේ ප්‍රගතිය වෙනුවට), පිටපත් අනුපාතය සහ ( ඉතා රළු) ඇස්තමේන්තුගත කාලය ඉතිරිව ඇත්තේ:

sudo rsync -a --info=progress2 --no-i-r /source /destination

සූඩෝ අවශ්‍ය වන්නේ ඔබ සතුව නැති නාමාවලි / ලිපිගොනු සමඟ කටයුතු කරන්නේ නම් පමණි. එසේම, නොමැතිව --no-i-r, ප්‍රතිශතය යම් වේලාවක පිටපත අතරතුර අඩු සංඛ්‍යාවකට නැවත සැකසිය හැක. සමහර විට පසුකාලීන rsync අනුවාදයන් info = progress2 සමඟ පෙරනිමියෙන් නොපවතිනු ඇත, නමුත් එය වර්තමාන 3.1.2 අනුවාදයේ නොමැත.

දැනටමත් ලිපිගොනු අඩංගු නාමාවලියකට පිටපත් කිරීමේදී ඉතිරිව ඇති ප්‍රතිශතය සහ කාලය දළ වශයෙන් තක්සේරු කර ඇති බව මට පෙනී ගොස් ඇත (එනම්, ඔබ සාමාන්‍යයෙන් cp -n "no clobber" භාවිතා කරන විට මෙන්).


7

dd status=progress

GNU Coreutils 8.24+ (උබුන්ටු 16.04) හි විකල්පය එකතු කරන ලදි:

dd if=src of=dst status=progress

පර්යන්තය වර්ගයේ රේඛාවක් පෙන්වයි:

462858752 bytes (463 MB, 441 MiB) copied, 38 s, 12,2 MB/s

මෙයද බලන්න: dd හි ප්‍රගතිය ඔබ නිරීක්ෂණය කරන්නේ කෙසේද?


1
ඔබ අදහස් කළේ: stdout යනු ඔබේ පර්යන්තය වරින් වර යාවත්කාලීන කරන ලද රේඛාවක් පෙන්වන අක්‍ෂර සහ vt100 ගැලවීමේ අනුක්‍රමයකි ;). stdout සැමවිටම බයිට් ප්‍රවාහයක් වන අතර එය දර්ශනය වන ආකාරය සමඟ කිසිදු සම්බන්ධයක් නොමැත (යෙදුමට එය දැනට පර්යන්තයකට අනුයුක්ත කර තිබේද නැද්ද යන්න දැනගත හැකිය හැර ...)
masterxilo

aster මාස්ටර්සිලෝ නවක වදන් ගණන් ගන්නේ නැත, විශේෂ experts යින් දැන ගනු ඇත ;-)
හෙහෙ

හොඳයි, මම හිතන්නේ ඒවා වැනි දේවල් ප්‍රකාශ කිරීම සැමවිටම හොඳයි, සමහර විට සමහර තොරතුරු අතහැර දමන්න, නමුත් ඔබේ පා readers කයින් කිසි විටෙකත් වැරදි මානසික ආකෘතියක් ඇති නොකරන්න. ඔබ "stdout යනු (වරින් වර යාවත්කාලීන කරන ලද) රේඛාවක්" යැයි පැවසුවහොත්, ඔබ පවසන්නේ stdout යනු විකෘති මතකයේ කොටසක් නොවන බවයි. නවකයින් සඳහා පවා දැන ගැනීම මෙය වැදගත් වේ.
masterxilo

4

ඔබට කිරීමට අවශ්‍ය දේ අනුව, මිඩ්නයිට් කමාන්ඩර් ( mc) පිළිතුර විය හැකිය. මට පුදුමයි එය තවම සඳහන් කර නැති බව.

එක් විශාල ගොනුවක් මාරු කිරීමේ ප්‍රගතිය පෙන්වීමට කැමති pvහෝ rsyncහොඳ මෙවලම් , නමුත් සම්පූර්ණ ඩිරෙක්ටරි / ගස් පිටපත් කිරීමේදී, mcප්‍රමාණය ගණනය කර ප්‍රගතිය ඉතා සියුම් ලෙස පෙන්වයි. ප්ලස් එය බොහෝ පද්ධති වල කොටුවෙන් පිටත ලබා ගත හැකිය.


2
"එය බොහෝ පද්ධති වල කොටුවෙන් පිටත ලබා ගත හැකිය." ... කිසිදු පෙරනිමි උබුන්ටු ස්ථාපනයක නොවේ.
මුරු

3

ෂෙල් ස්ක්‍රිප්ට් එකක් භාවිතා කරන්න:

#!/bin/sh
cp_p()
{
   strace -q -ewrite cp -- "${1}" "${2}" 2>&1 \
      | awk '{
        count += $NF
            if (count % 10 == 0) {
               percent = count / total_size * 100
               printf "%3d%% [", percent
               for (i=0;i<=percent;i++)
                  printf "="
               printf ">"
               for (i=percent;i<100;i++)
                  printf " "
               printf "]\r"
            }
         }
         END { print "" }' total_size=$(stat -c '%s' "${1}") count=0
}

මෙය පෙනෙන්නේ:

% cp_p /home/echox/foo.dat /home/echox/bar.dat
66% [===============================>                      ]

මූලාශ්රය


2

pv විසින් ගොනු විස්තරයක් ලබා දෙන ආකාරය pp දනී, එය cp හෝ වෙනත් දෙයක් වේවා

ප්‍රලේඛනයෙන්:

   (Linux only): Watching file descriptor 3 opened by another process 1234:

          pv -d 1234:3

   (Linux only): Watching all file descriptors used by process 1234:

          pv -d 1234

උදාහරණයක්:

md5sum file &
[1] + 1271 suspended
pv -d 1271
417MiB 0:00:17 [12,1MiB/s] [============>                                 ] 29% ETA 0:00:53

$ cp file.mov copy.mov &
[2] 3731
$ pv -d 3731
3:/media/windows/file.mov:  754MiB 0:00:04 [97,2MiB/s] [======================>                       ] 52% ETA 0:00:07
4:/media/windows/copy.mov:  754MiB 0:00:04 [97,3MiB/s] [     <=>                                                                   ] 

මෙය තෝරාගත් පිළිතුරට ඇතුළත් කළ යුතුය.
Jgenrgen Hörmann

1

ගුණාංග ආරක්ෂා කර ගැනීම සඳහා තවත් එක් විකල්පයක් විය හැකිය ( sourceෆෝල්ඩරයක් නම් එය තුළ එය සාදනු ඇත destination)

tar -c source | pv -e -t -p -r | tar -C destination  -x

එය යමෙකුට ප්‍රයෝජනවත් වේ යැයි සිතමි. ඇස්තමේන්තුගත හුවමාරු කාලය ලබා ගැනීම සඳහා මෙය do -s sourceකල්තියාම කර -s <size>පරාමිතියක් ලෙස සම්මත කිරීමෙන් ලබා ගත හැකිය pv.


-f -අතිරික්ත වේ. tarසඳහා පෙරනිමි ප්‍රතිදානය cසහ ආදානය xstdout සහ stdin වේ.
මුරු

එය OS / tar අනුවාදය මත රඳා පවතීද? එය උබුන්ටු වෙබ් අඩවියක් බව මම දනිමි, නමුත් මෙය
මැකෝස්

1
නෑ. සියළුම බුද්ධිමත් ක්‍රියාත්මක කිරීම් (මැකෝස් භාවිතා කරන ලිබාර්කිව් තාර ඇතුළු) මෙම හැසිරීම ඇත.
මුරු

මැකෝස් මත සත්‍යාපනය කර ඇති අතර ඔබේ යෝජනාව වලංගු වේ - මම මගේ පිළිතුර යාවත්කාලීන කර ඇත. ස්තූතියි!
ciekawy

0

ඔබට ඕනෑම වැඩසටහනක් භාවිතා කර පිටපත් කළ හැකිය. ඒ අතරම, ඔබට sudo iotopප්‍රගතියකින් තොරව සත්‍ය වශයෙන්ම තැටිය කියවීමේ / ලිවීමේ වේගය ආරම්භ කර දැක ගත හැකිය .


0

ප්‍රගති_ තීරුව සඳහා ප්‍රභව කේතය පහත git ගබඩාවේ පරීක්ෂා කරන්න

https://github.com/Kiran-Bose/supreme

අභිරුචි බාෂ් ස්ක්‍රිප්ට් පැකේජය උත්තරීතර ලෙස උත්සාහ කරන්න

ඩෙබ් ගොනුව බාගත කර ඩෙබියන් පදනම් කරගත් බෙදාහැරීම් වල ස්ථාපනය කරන්න හෝ ප්‍රභව ගොනු බාගත කරන්න, වෙනස් කිරීම සහ වෙනත් ඩිස්ට්‍රෝ සඳහා භාවිතා කරන්න

ක්‍රියාකාරී දළ විශ්ලේෂණය

(1) යෙදුම් විවෘත කරන්න ---- ෆයර්ෆොක්ස් ---- කැල්කියුලේටරය ---- සැකසුම්

(2) ගොනු කළමනාකරණය කරන්න ---- සොයන්න ---- සංචාලනය ---- ඉක්මන් ප්‍රවේශය

            |----Select File(s)
            |----Inverse Selection
            |----Make directory
            |----Make file
                                          |----Open
                                          |----Copy
                                          |----Move
                                          |----Delete
                                          |----Rename
                                          |----Send to Device
                                          |----Properties

(3) දුරකථනය කළමනාකරණය කරන්න ---- දුරකථනයෙන් ගෙනයන්න / පිටපත් කරන්න ---- දුරකථනයට ගෙනයන්න / පිටපත් කරන්න ---- ෆෝල්ඩර සමමුහුර්ත කරන්න

(4) USB කළමනාකරණය කරන්න ---- USB වෙතින් ගෙනයන්න / පිටපත් කරන්න ---- USB වෙත ගෙනයන්න / පිටපත් කරන්න

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.