Как да копирате файлове с помощта на командата install на Linux
Фатмавати Ахмад Заенури/Shutterstock.com
|_+_| е универсална команда за копиране на файлове в Linux и macOS. Той е идеален за опитен потребител, който търси ефективност. Прочетете тази статия, за да разберете как да работите по-интелигентно, а не по-трудно.
Изчакайте – не е за инсталиране на софтуер?
|_+_| командата може да има най-подвеждащото име от която и да е от командите на Linux. Всъщност не инсталира никакъв софтуер. Ако се опитвате да инсталирате софтуерен пакет от командния ред в Ubuntu или друга базирана на Debian дистрибуция, използвайте |_+_| команда. В други дистрибуции на Linux използвайте вместо това инструмента за управление на пакети на вашата Linux дистрибуция — например |_+_| на Fedora или |_+_| на openSUSE.
И така, какво прави инсталирането?
Накратко |_+_| комбинира елементи от |_+_| ( копие ), install
( смени собственика ), install
( промяна на режима ), apt-get
( направи директория ), и |_+_| ( ленти символи ) команди. Позволява ви да използвате функции от всички в едно действие.
|_+_| командата може:
- Копирайте файлове като |_+_| команда.
- Изберете дали да презапишете съществуващите файлове.
- Създайте целевата директория, ако тя не съществува, като |_+_|.
- Задайте флаговете за потребителски разрешения на файловете, точно като |_+_| команда.
- Задайте собственика на файловете, точно както |_+_| команда.
- Премахнете несъществения багаж от изпълними файлове, точно като |_+_| команда.
Въпреки цялата тази функционалност, |_+_| команда също няма много опции да се бори с.
Кога бихте го използвали
|_+_| командата вероятно няма да се използва всеки ден. Полезно е, но само за определени ситуации. Един сценарий, при който |_+_| идва на свой ред е разработката на софтуер. Да приемем, че програмирате нова помощна програма. Ще трябва да направите тестване извън средата за разработка. За да направите това, трябва да копирате новите програмни файлове в тестова директория. Може да се наложи да се създаде тестовата директория и да зададете правилните разрешения и собственост за файловете.
Реклама
Тъй като разработването е итеративна дейност, в крайна сметка можете да извършите тази последователност от действия много, много пъти. |_+_| командата върши цялата тежест вместо вас. И накрая, когато новата ви помощна програма е готова за внедряване, можете да използвате |_+_| да го копирате с правилните разрешения до крайното му работно място.
Пример
Програмист работи точно върху такава нова помощна програма, наречена |_+_|. Състои се от изпълним двоичен файл и база данни. След тестване той трябва да бъде копиран в |_+_| за да го направи достъпен за всички потребители на системата Linux. Ще трябва да замените имената на файловете и пътищата към директорията в нашия пример за файловете и пътищата, които използвате на вашия компютър, когато използвате |_+_|.
Докато не е готов за пускане, той ще бъде тестван в директория, наречена |_+_|. Членове на |_+_| групата ще има разрешения за четене и изпълнение. Други потребители също ще имат разрешения за четене и изпълнение. |_+_| командата използва същото числово представяне за разрешения като |_+_| прави. Нашият програмист реши, че разрешенията трябва да бъдат настроени на:
- Собственик: Четете, пишете и изпълнявайте.
- Група: Прочетете и изпълнете.
- Други: Изпълнявайте само.
Как да използвате |_+_| Команда
Работната директория на нашия измислен програмист е |_+_|. Той е написал програмата, компилира я и създаде двоичен файл, наречен |_+_|. Той вече създаде файла на базата данни, който |_+_| работи с, |_+_|. Така и двата файла са готови за тестване. Нека да ги разгледаме:
dnf
|_+_| Помощната програма, която току-що е написал, създава анаграми от фраза, предоставена в командния ред. Тестването за проверка е доста лесно.
Нашият програмист е извикал |_+_| с фразата бисквита и всичко изглежда добре. Сега той иска да копира тези два файла в |_+_| директория, за да видите дали новата помощна програма функционира правилно далеч от средата за разработка. Той издава следната команда:
zypper
Опциите, използвани в командния ред, бяха:
- |_+_| (backup) опцията създава резервни копия на файловете, преди те да бъдат презаписани.
- |_+_| (suffix) опцията дефинира суфикса за архивните файлове. Ако не предоставите суфикс a |_+_| (тилда) се използва. Питаме |_+_| да се използва суфикс от |_+_|.
- Задаваме собственика на файла да бъде |_+_| използвайки |_+_| опция (собственик).
- |_+_| (група) опцията изисква името на група. Това става групата на собствениците на файловете. Групата, която ще използваме, се нарича |_+_|.
- |_+_| Опцията (mode) задава файловите режими за файловете, използвайки стандартния |_+_| числов синтаксис.
- Файловете са копирани в директорията за тестване.
- Разрешенията са зададени правилно.
- |_+_| е собственик на файловете.
- |_+_| group е групата на собствениците на двата файла.
- На всеки файл са направени резервни копия, наречени ana.bak и Words.db.bak.
- › Как да намерите своя Spotify Wrapped 2021
- › 5 уебсайта, които всеки потребител на Linux трябва да направи отметка
- › Функции срещу формули в Microsoft Excel: Каква е разликата?
- & rsaquo; Кибер понеделник 2021: Най-добрите технологични сделки
- & rsaquo; Кибер понеделник 2021: Най-добрите оферти за Apple
- › Компютърната папка е 40: Как Xerox Star създаде работния плот
Можем да видим, че |_+_| създава |_+_| директория и след това създава |_+_| директория. Файловете са изброени един по един, докато се копират в целевата директория.
Изброяване на файловете в |_+_| потвърждава, че са копирани правилно.
install
Следващата стъпка е да тествате |_+_| помощна програма, като я извикате в |_+_| директория.
Помощната програма работи според очакванията, което е страхотно. Разрешенията обаче не са правилни. Изискването е да зададете членове на групата |_+_| да имат разрешения за четене и изпълнение, а други потребители да имат само изпълнение.
Можем да решим и двата проблема съвсем просто със следната команда. Обърнете внимание на използването на |_+_| за да изпълните командата с root права. |_+_| и |_+_| и опциите изискват това. Ще бъдем помолени за нашата парола, когато издадем командата.
cp
Вече не е необходимо да използваме |_+_| (създайте директории), защото знаем, че тестовата директория вече съществува. Също така сме пропуснали |_+_| (подробна) опция. Изброяване на файловете в нашия |_+_| директория ни показва подробностите за файла:
chown
Това потвърждава, че всички наши изисквания са изпълнени.
Всичко това беше постигнато чрез използването на една команда. чист.
Нашият програмист прави някои последни промени в помощната програма и компилира отново. Променените файлове трябва да бъдат копирани в |_+_| директория от |_+_| директория. Можем да направим това с помощта на |_+_| опция (сравнение). Ако изходният файл и целевият файл са еднакви, изходният файл не се копира.
chmod
Изброяването на файловете в целевата директория ни показва, че размерът на файла на |_+_| файлът е променен. Той е по-голям от |_+_|файла. Печатът за време на |_+_| също се е променило. Тези промени са защото новата версия на файла е копирана тук.
mkdir
Размерът на файла и времевата марка на |_+_| файла не са променени. Не бяха направени промени в |_+_| файл, така че не е копиран. На проект с много файлове |_+_| Опцията (сравнение) може да спести много време и изтичане на твърдия диск, като копира само онези файлове, които са били променени.
Програмистът отново тества, че |_+_| услугата продължава да работи.
Време е да използвате |_+_| за да копирате файловете в |_+_| директория. Това ще направи новата помощна програма достъпна за всички потребители на този Linux компютър. Знаем, че |_+_| съществува, така че не е необходимо да създаваме тази директория. Можем да използваме модифицирана версия на последната ни команда.
РекламаПроменихме целевата директория на |_+_|. Премахнахме |_+_| опция (сравнение), защото все още няма копия на тези файлове в целевата директория, така че няма с какво да се сравнява. По същия начин няма нищо за архивиране, така че можем да премахнем |_+_| (резервно) опция и |_+_| (суфикс) опция.
strip
Можем да изброим, че файловете са пристигнали в |_+_|:
install
И като последен тест нека променим директорията към нашата домашна директория и да видим дали можем да извикаме новата си помощна програма от там.
Обърнете внимание, че не е необходимо да предваряме |_+_| команда с |_+_| което означава, че се изпълнява от |_+_|. Мисията изпълнена.
Споменахме, че инсталацията може да премахне излишните таблици със символи и друг багаж от двоичния файл, за да го намали по размер. Нека направим това сега. Имайте предвид, че командата по-долу не включва Words.db. Това е така, защото Words.db е файл на база данни, а не двоичен изпълним файл. За да копирате и свиете двоичния файл |_+_| можем да използваме следната команда. Добавихме опцията -s (свиване) с малка буква s. Добавихме отново опцията -b (резервно) и опцията -S (суфикс), с главни букви S.
cp
Реклама
Изброяване на файловете в |_+_| ни позволява да сравним размера на |_+_| файл с неговата резервна версия. |_+_| файл е намален до почти 60% от предишния си размер.
mkdir
В обобщение
|_+_| команда обслужва доста нишова употреба. За много хора той няма да се използва ден след ден или евентуално от месец на месец. Въпреки това |_+_| командата е добър инструмент, с който да сте запознати и да имате в арсенала си от трикове. За случаите, когато имате нужда от него, той възнаграждава вашата крива на обучение с повишена ефективност, простота и просто по-малко натискания на клавиши.
СВЪРЗАНИ: Най-добрите Linux лаптопи за разработчици и ентусиасти
ПРОЧЕТЕТЕ СЛЕДВАЩОДейв Маккей за първи път използва компютри, когато перфорираната хартиена лента беше на мода и оттогава той програмира. След повече от 30 години в ИТ индустрията, той вече е технологичен журналист на пълен работен ден. По време на кариерата си той е работил като програмист на свободна практика, мениджър на международен екип за разработка на софтуер, ръководител на проекти за ИТ услуги и, последно, като служител по защита на данните. Неговото писане е публикувано от howtogeek.com, cloudsavvyit.com, tenterpriser.com и opensource.com. Дейв е евангелист на Linux и привърженик на отворен код.
Прочетете пълната биография