මම උත්සාහ කරන්නේ ෆෝල්ඩරයක අන්තර්ගතය වෙනත් ෆෝල්ඩරයකට වෙනත් ඩිරෙක්ටරියක ටර්මිනලය භාවිතා කර පිටපත් කිරීමටයි.
මෙය සාක්ෂාත් කර ගැනීම සඳහා අවශ්ය විධාන රේඛා සින්ටැක්ස් පිළිබඳ උදාහරණයක් මට ලබා දීමට යමෙකුට හැකිද?
මම උත්සාහ කරන්නේ ෆෝල්ඩරයක අන්තර්ගතය වෙනත් ෆෝල්ඩරයකට වෙනත් ඩිරෙක්ටරියක ටර්මිනලය භාවිතා කර පිටපත් කිරීමටයි.
මෙය සාක්ෂාත් කර ගැනීම සඳහා අවශ්ය විධාන රේඛා සින්ටැක්ස් පිළිබඳ උදාහරණයක් මට ලබා දීමට යමෙකුට හැකිද?
Answers:
ඔබට විධානය සමඟ ෆෝල්ඩරයක අන්තර්ගතය /source
දැනට පවතින වෙනත් ෆෝල්ඩරයකට පිටපත් කළ හැකිය/dest
cp -a /source/. /dest/
මෙම -a
විකල්පය වැඩිදියුණු කරන ලද පුනරාවර්තන විකල්පයක් වන අතර එය සියලු ගොනු ගුණාංග ආරක්ෂා කරන අතර සමමුහුර්ත ආරක්ෂා කරයි.
මෙම .
මූලාශ්රය මාර්ගය අවසානයේ දී විශේෂිත වේ cp
සියළුම ගොනු සහ ෆෝල්ඩර, ඇතුළත් සඟවා අය කාර්යය පිටපත් කිරීමට අවසර ලබා දෙන බව කාරක රීති.
cp -a ~/Downloads/textext/. ~/.config/inkscape/extensions/
-p
ගොනු අවසර සහ කාලරාමු ආරක්ෂා කිරීමට ධජය එක් කරන්න . cp -ap /var/www/original.com/images/. /var/www/new.com/images/
-a
දැනටමත් ඇඟවුම් කර --preserve=all
ඇති පරිදි එය වඩා පුළුල් ය -p = --preserve=mode,ownership,timestamps
.
scp
භාවිතා කරනුයේ ජාලයක් හරහා (හරහා ssh
) පිටපත් කිරීම සඳහා වන අතර සන්නිවේදන නාලිකාව සංකේතනය කරන්නේ ගමනාන්ත ගොනු පද්ධතියේ ගොනු නොවේ.
විකල්පයක් වන්නේ rsync ය
rsync -r source/ destination
Rsync හි ඇති වාසි:
ආරම්භක සමමුහුර්තකරණයෙන් පසුව, එය වෙනස් කර ඇති ගොනු පමණක් පිටපත් කරනු ඇත.
ඔබට එය ජාලයක් හරහා භාවිතා කළ හැකිය, $ HOME හි ගොනු සඳහා පහසුය, විශේෂයෙන් වින්යාස ගොනු.
rsync -r source/ destination
ප්රමාණවත් විය යුතුයි, නැහැ?
ඔබ නමින් ෆෝල්ඩරයක් ඇති කියන්න ඉඩ දෙනවා folder1 ඔබේ ~
, ඇතුළත folder1 කැඳවා 1 ගොනුව file1 හා කැඳවා 2 ෆෝල්ඩර sub1 හා sub2 ඔවුන් තුළ තවත් ගොනු සහ ෆෝල්ඩර එක් එක්.
සියලු අන්තර්ගතය පිටපත් කිරීමට ~/folder1
කිරීමට ~/new_folder1
ඔබ භාවිතා කරන
cp -r ~/folder1/. ~/new_folder1
new_folder1
එවිට සියලුම ලිපිගොනු සහ ෆෝල්ඩර අඩංගු වේ folder1
.
cp
යනු ටර්මිනලයක් භාවිතා කර පිටපත් කිරීමේ විධානයයි, -r
එය පුනරාවර්තනය කරයි (එබැවින්, වත්මන් ඩිරෙක්ටරිය + ධාරාව තුළ ඇති තවත් ඩිරෙක්ටරි) ~/folder1
ප්රභව ෆෝල්ඩරය වේ, ~/new_folder1
එය මූලාරම්භය තුළ ඇති ගොනු / ෆෝල්ඩර සඳහා ගමනාන්ත ෆෝල්ඩරය වේ.
~/new_folder1/folder1
අන්තර්ගතය පිටපත් කිරීම වෙනුවට නව උප බහලුමක් නිර්මාණය කරයි .
cp -r ~/folder1/* ~/new_folder1
[root@ home]# mkdir food [root@ home]# cd food/ [root@ food]# mkdir .fruit [root@ food]# mkdir veggies [root@ food]# touch veggies/carrots [root@ food]# touch .fruit/apple [root@ food]# ls * carrots [root@ food]#
ෆෝල්ඩරය පිටපත් කිරීම පිළිබඳ වැඩි විස්තර සඳහා මෙය http://www.cyberciti.biz/faq/copy-folder-linux-command-line/ පරීක්ෂා කරන්න . මෙය උපකාරී වේ යැයි සිතමි.
cp Command
cp
යනු ගොනු සහ නාමාවලි පිටපත් කිරීම සඳහා ලිනක්ස් විධානයකි. වාක්ය ඛණ්ඩය පහත පරිදි වේ:
cp source destination
cp dir1 dir2
cp -option source destination
cp -option1 -option2 source destination
මෙම උදාහරණයේ දී /home/vivek/letters
ෆෝල්ඩරය සහ එහි සියලුම ගොනු /usb/backup
ඩිරෙක්ටරියට පිටපත් කරන්න :
cp -avr /home/vivek/letters /usb/backup
කොහෙද,
-a
: ඩිරෙක්ටරි ගොනු මාදිලියක්, හිමිකාරිත්වය, කාලරාමු වැනි හැකිතාක් අමතර ගුණාංග ආරක්ෂා කරන්න: සන්දර්භය, සබැඳි, xattr, සියල්ල.
-v
: කරන්නේ කුමක්ද යන්න පැහැදිලි කරන්න.
-r
: නාමාවලි පුනරාවර්තනය කරන්න. උදාහරණයක්
/ Tmp / conf නමින් ෆෝල්ඩරයක් / tmp / උපස්ථයට පිටපත් කරන්න:
$ cp -avr /tmp/conf/ /tmp/backup
පිටපත් බහලුම dir_1 හා එහි අන්තර්ගතය (_files_) බහලුම තුලට dir_2 :
cp -r ./dir_1 ./dir_2
# or
cp -r ./dir_1/ ./dir_2/
# Results in: ./dir_2/dir_1/_files_
පිටපත් dir_1 අන්තර්ගතය පමණක් (_files_) බහලුම තුලට dir_2 :
cp -r ./dir_1/. ./dir_2
# or
cp -r ./dir_1/. ./dir_2/
# Results in: ./dir_2/_files_*
_files_
යනු නාමාවලියෙහි ඇති සත්ය ගොනු සඳහා ස්ථානගත කිරීමකි.
ෆෝල්ඩර දෙකක් තිබේ නම්: (ලිඛිත අවසරය ඇතිව)
drwxr-xr-x 4 vimal vimal 4096 Sep 9 12:17 .
drwxr-xr-x 3 root root 4096 Aug 18 14:35 ..
drwxrwxrwx 6 vimal vimal 4096 Sep 9 12:15 DATA
drwxrwxrwx 7 vimal vimal 4096 Sep 9 12:15 PORTAL
ඔබ වෙනත් ෆෝල්ඩරයක සියලුම අන්තර්ගතයන් පිටපත් කිරීමට අවශ්ය PORTAL නම් ෆෝල්ඩරය තුළ සිටී නම් ඩේටා එකම මට්ටමකින් කියන්න එවිට ඔබ එසේ කරනු ඇත
vimal@vimal-D3H:/var/www/html/PORTAL$ cp -a ../DATA/. .
ඔබට තිත් 2 ක් දැකිය යුතුය. අන්තිම තිත පවසන්නේ වර්තමාන ෆෝල්ඩරයේ මෙහි පිටපත් කරන්න
හා
පහත දැක්වෙන එකක් / දත්ත /. ඩේටා ෆෝල්ඩරය තුළ ඇති සියලුම අන්තර්ගතයන් පිටපත් කළ යුතු බව පවසන අතර ඩේටා ෆෝල්ඩරයම නොවේ.
ඔබ මෙම පසුපසින් ඉවත් කළහොත් "." සිට / දත්ත /
ඉන්පසු සම්පූර්ණ ඩේටා ෆෝල්ඩරය PORTAL තුළ පිටපත් කරනු ලැබේ (ඔබ මුහුණ දෙන ස්ථානයෙන්).
මම මේ විධානයට කැමතියි
rsync -av --progress ~/code/project-source/. ~/code/project-destination --exclude .git --exclude node_modules
Rsync විධානයෙහි බහුලව භාවිතා වන විකල්ප කිහිපයක් පහත දැක්වේ: