Cómo copiar archivos usando el comando “Installer” fr Linux

Contenu

Bash art conceptuel sur un bureau Ubuntu Linux

install est une commande de copie de fichier polyvalente sur Linux et macOS. Il est parfait pour l'utilisateur expérimenté à la recherche d'efficacité. Lisez cet article pour savoir comment travailler plus intelligemment, pas plus difficile.

Attendre, Ne pas installer de logiciel?

Les install la commande peut avoir le nom le plus trompeur de n'importe quelle commande Linux. En réalité, n'installe aucun logiciel. Si vous essayez d'installer un package logiciel à partir de la ligne de commande sur Ubuntu ou une autre distribution basée sur Debian, utiliser el apt-get commander. Sur d'autres distributions Linux, utilisez l'outil de gestion de paquets de votre distribution Linux, par exemple, dnf dans Fedora ou zypper et ouvrezSUSE.

Ensuite, A quoi sert l'installation?

En un mot install combine des éléments de la cp (Copier), chown (Changement de propriétaire), chmod (changer de mode), mkdir (créer un répertoire), et strip (symboles de bande) commandes. Il vous permet d'utiliser les fonctions de chacun d'eux en une seule action.

Les install la commande peut:

  • Copiez des fichiers comme le cp commander.
  • Choisissez si vous souhaitez écraser les fichiers existants.
  • Créer le répertoire de destination s'il n'existe pas, Quoi mkdir.
  • Définir des indicateurs d'autorisation utilisateur pour les fichiers, de la même manière que le chmod commander.
  • Définir le propriétaire des fichiers, de la même manière que le chown commander.
  • Supprimer les bagages non essentiels des fichiers exécutables, de la même manière que le strip commander.

Malgré toutes ces fonctionnalités, les install la commande n'a pas trop De nombreuses options faire face à.

installer la page de manuel

Quand l'utiliseriez-vous

Les install La commande ne sera probablement pas utilisée tous les jours. Elle est utile, mais seulement pour certaines situations. Une étape où install entre en jeu est le développement de logiciels. Disons que vous programmez un nouvel utilitaire. Vous devrez tester en dehors de l'environnement de développement. Pour faire ça, vous devez copier les nouveaux fichiers du programme dans un répertoire de test. Vous devrez peut-être créer le répertoire de test et déterminer les autorisations et la propriété correctes pour les fichiers.

Parce que le développement est une activité itérative, vous pouvez finir par faire cette séquence d'actions beaucoup, d'habitude. Les install Le commando fait tout le gros du travail pour vous. En résumé, lorsque votre nouvel utilitaire est prêt à être déployé, vous pouvez utiliser install pour le copier avec les autorisations correctes sur votre emplacement de travail final.

Un exemple

Un programmeur travaille sur un nouvel utilitaire, appel ana. C'est un fichier binaire exécutable et une base de données. Après l'épreuve, doit être copié sur /usr/local/bin pour le rendre disponible à tous les utilisateurs du système Linux. Vous devrez remplacer les noms de fichiers et les chemins de répertoire dans notre exemple par les fichiers et les chemins que vous utilisez sur votre ordinateur lorsque vous utilisez install.

Jusqu'à ce que vous soyez prêt à lancer, sera testé dans un répertoire appelé ~/test/ana. Les membres du geek le groupe aura les autorisations de lecture et d'exécution. Les autres utilisateurs auront également des autorisations de lecture et d'exécution. Les install La commande utilise la même représentation numérique pour les autorisations que chmod il le fait. Notre programmeur a décidé que les autorisations devaient être définies sur:

  • Propriétaire: Lire, écrire et exécuter.
  • Grouper: Lire et exécuter.
  • Autres: Seulement courir.

Comment utiliser le install Commander

Le répertoire de travail de notre programmeur fictif est ~/work. A écrit le programme, l'a compilé et produit un binaire appelé ana. Il a déjà créé le fichier de base de données qui ana ça marche avec, Words.db. Entonces ambos archivos están listos para probar. Jetons un coup d'oeil à eux:

ls -l ana Words.db

Les ana La utilidad que acaba de escribir crea anagramas a partir de una frase proporcionada en la línea de comandos. Las pruebas de verificación son bastante sencillas.

prueba de la utilidad ana en el directorio de trabajo

Nuestro programador ha invocado ana con la frase “galleta” y todo parece estar bien. Ahora quiere copiar estos dos archivos al ~/test/ana directorio para ver si la nueva utilidad funciona correctamente fuera del entorno de desarrollo. Emite el siguiente comando:

install -D -v ana Words.db -t ~/test/ana

Instale el comando en / test / Anna

Las alternativas utilizadas en la línea de comando fueron:

  • : Cree directorios, incluidos los directorios principales, si c'est nécessaire.
  • v: Détaillé, enumere cada directorio a medida que se crea y cada copia de archivo a medida que se hace.
  • t: Directorio de destino.

Podemos ver eso install crea el ~/test annuaire, y después crea el ~/test/ana annuaire. Los archivos se enumeran uno por uno a medida que se copian en el directorio de destino.

Listado de archivos en ~/test/ana confirma que se han copiado correctamente.

ls -l

ls dans le répertoire / test / Anna

L'étape suivante consiste à tester le ana utilitaire en l'invoquant dans le ~/test/ana annuaire.

tester l'utilitaire ana dans le répertoire / test / Anna

L'utilitaire fonctionne comme prévu, qui est genial. Malgré cela, les autorisations ne sont pas correctes. L'exigence est de déterminer les membres du groupe geek disposer des autorisations de lecture et d'exécution, et que d'autres utilisateurs viennent d'exécuter.

Nous pouvons aborder les deux problèmes assez simplement avec la commande suivante. Veuillez noter l'utilisation de sudo pour exécuter la commande avec les autorisations root. Les -o et -g et les alternatives l'exigent. Se nos pedirá nuestra contraseña cuando emitamos el comando.

sudo install -b -S .bak -o dave -g geek -m 751 ana Words.db -t ~/test/ana

commande d'installation avec les options de sauvegarde et les paramètres d'autorisation

  • Les -b L'option (copie de sécurité) créer des copies de sauvegarde des fichiers avant qu'ils ne soient écrasés.
  • Les -S L'option (suffixe) définir le suffixe pour les fichiers de sauvegarde. Si vous ne fournissez pas de suffixe pour ~ (tilde) on utilise. nous demandons install utiliser un suffixe de .bak.
  • Nous définissons le propriétaire du fichier comme étant dave en utilisant le -o (propriétaire) option.
  • Les -g L'option (grouper) besoin du nom d'un groupe. Cela devient le groupe qui possède les fichiers. Le groupe que nous allons utiliser s'appelle geek.
  • Les -m L'option (manière) définir les modes de fichier pour les fichiers, en utilisant la norme chmod syntaxe numérique.

Nous n'avons plus besoin d'utiliser le -D (créer des répertoires), car nous savons que le répertoire de test existe déjà. Nous avons également omis le -v option (détaillé). Liste des fichiers dans notre ~/test/ana répertoire nous montre les détails du fichier:

ls -l

ls dans le répertoire / test / Anna

Cela confirme que toutes nos exigences ont été satisfaites..

  • Les fichiers ont été copiés dans le répertoire de test.
  • Les autorisations ont été configurées correctement.
  • dave est le propriétaire des fichiers.
  • Les geek group es el grupo propietario de los dos archivos.
  • Se han realizado copias de seguridad de cada archivo, llamados ana.bak y Words.db.bak.

Todo eso se logró a través de el uso de un comando. Propre.

Nuestro programador realiza algunos cambios finales en la utilidad y vuelve a compilar. Los archivos que han cambiado deben copiarse a la ~/test/ana directorio del ~/work annuaire. Nous pouvons le faire en utilisant le -C (comparar) option. Si el archivo de origen y el archivo de destino son iguales, el archivo de origen no se copia.

sudo install -C -b -S .bak -o dave -g geek -m 751 ana Words.db -t ~/test/ana

commande d'installation avec l'option de comparaison -C

La liste des fichiers dans le répertoire de destination nous montre que la taille du fichier du ana le fichier a changé. Est plus grand que lui ana.bakRecord. L'horodatage dans ana ça a aussi changé. Ces changements sont dus à la nouvelle version du fichier en cours de copie ici.

ls -l

ls fr / test / ana con test pour ana utilitaire

La taille du fichier et l'horodatage du Words.db le fichier n'a pas changé. Aucune modification n'a été apportée au Words.db déposer, donc il n'a pas été copié. Dans un projet avec de nombreux fichiers, -C L'option (comparar) cela peut faire gagner beaucoup de temps et perdre du temps sur le disque dur, lors de la copie uniquement des fichiers qui ont été modifiés.

Le programmeur a retesté que le ana l'utilitaire fonctionne toujours.

Temps d'utilisation install copier des fichiers vers /usr/local/bin annuaire. Cela rendra le nouvel utilitaire disponible pour tous les utilisateurs de cet ordinateur Linux. Nous le savons /usr/local/bin Ça existe, nous n'avons donc pas besoin de créer ce répertoire. Nous pouvons utiliser une version modifiée de notre dernière commande.

Nous avons changé le répertoire de destination pour qu'il soit /usr/local/bin. Nous avons supprimé le -C (comparar) debido a que aún no hay copias de estos archivos en el directorio de destino, por lo que no hay nada con lo que comparar. De la même manière, no hay nada de lo que hacer una copia de seguridad, por lo que podemos quitar el -b (copie de sécurité) et la -S (suffixe) option.

sudo install -o dave -g geek -m 751 ana Words.db -t /usr/local/bin

instalar copiando archivos a / usr / local / poubelle

Podemos enumerar que los archivos han llegado a /usr/local/bin:

ls -l

ls de / usr / local / poubelle

Y como prueba final, cambiemos el directorio a nuestro directorio de inicio y veamos si podemos invocar nuestra nueva utilidad desde allí.

prueba de utilidad ana

Tenga en cuenta que no es necesario que preceda el ana commande avec ./ lo que significa que se está ejecutando desde /usr/local/bin. Mission accomplie.

Mencionamos que la instalación puede quitar las tablas de símbolos redundantes y otro equipaje dentro del archivo binario, para reducir su tamaño. Hagámoslo ahora. Tenga en cuenta que el siguiente comando no incluye Words.db. Esto se debe a que Words.db es un archivo de base de datos, no un ejecutable binario. Para copiar y reducir el archivo binario ana nous pouvons utiliser la commande suivante. Hemos agregado la opción -s (encoger) avec une “s” minuscule. Hemos vuelto a agregar la opción -b (copie de sécurité) y la opción -S (suffixe), avec une “S” lettre capitale

sudo install -s -b -S .bak -o dave -g geek -m 751 ana -t /usr/local/bin

opción de instalación con opción -s strip

Listado de archivos en /usr/local/bin nos posibilita comparar el tamaño del ana archivo con su versión de respaldo. Les ana El archivo se ha reducido a casi el 60% de sa taille précédente.

ls -l /usr/local/bin

ls dans le répertoire de travail

En résumé

La la install La commande est adaptée à un usage très spécifique. Pour plusieurs personnes, ne sera pas utilisé jour après jour, ou éventuellement de mois en mois. Malgré que, les install La commande est un bon outil pour se familiariser et avoir dans son arsenal d'astuces. Pour les occasions où vous en avez besoin, récompense votre courbe d'apprentissage avec des améliorations d'efficacité, simplicité et simplement moins de frappes.

Abonnez-vous à notre newsletter

Nous ne vous enverrons pas de courrier SPAM. Nous le détestons autant que vous.