¡Creo que debe haber una respuesta simple a esto, pero no puedo entender por qué esto no está funcionando!
Tengo una carpeta en mi directorio de inicio (bueno, algunos niveles más bajos) llamada plugins instalados. Quiero transferir todo el contenido de esa carpeta (aproximadamente 15 archivos .jar) a carpetas diferentes, también llamadas complementos instalados.
Esto es lo que estoy intentando:
$ sudo mv /home/jira-plugins/installed-plugins/* /var/atlassian/application-data/jira/plugins/installed-plugins/
mv: cannot stat `/home/jira-plugins/installed-plugins/*': No such file or directory
Cual es mi error?
La carpeta definitivamente no está vacía. Aquí está la ls
salida:
$ sudo ls /home/jira-plugins/installed-plugins
analytics-client-3.15.jar plugin.2223138796603023855.jira-importers-plugin-6.0.30.jar
atlassian-chaperone-2.0.3.jar plugin.330169947367430109.jira-fisheye-plugin-6.2.8.jar
atlassian-client-resource-1.0.jar plugin.4363048306537053933.jeditor-2.1.7.2.jar
atlassian-pocketknife-api-commons-plugin-0.19.jar plugin.4438307615842123002.jira-ical-feed-1.0.4.jar
atlassian-pretty-urls-plugin-1.8.jar plugin.461510159947098121.jira-issue-collector-plugin-1.2.5.jar
base-hipchat-integration-plugin-7.8.24.jar plugin.5630909028354276764.atlassian-universal-plugin-manager-plugin-2.7.8.jar
base-hipchat-integration-plugin-api-7.8.24.jar plugin.6920509095052318016.atlassian-bonfire-plugin-2.9.13.jar
hipchat-core-plugin-0.8.3.jar plugin.6952408596192442765.atlassian-bonfire-plugin-2.8.2.jar
hipchat-for-jira-plugin-1.2.11.jar plugin.7079751365359230322.jira-importers-bitbucket-plugin-1.0.8.jar
jira-email-processor-plugin-1.0.29.jar plugin.7451827330686083284.atlassian-universal-plugin-manager-plugin-2.21.4.jar
jira-fisheye-plugin-7.1.1.jar plugin.7498175247667964103.jira-importers-redmine-plugin-2.0.7.jar
jira-ical-feed-1.1.jar plugin.7803627457720701011.jira-importers-plugin-3.5.3.jar
jira-issue-nav-components-6.2.23.jar plugin.7977988994984147602.jira-bamboo-plugin-5.1.6.jar
jira-servicedesk-2.3.6.jar plugin.8372419067824134899.jira-importers-plugin-5.0.2.jar
jira-workinghours-plugin-1.5.5.jar plugin.9081077311844509190.jira-fisheye-plugin-5.0.13.jar
plugin.1260160651631713368.stp-3.0.11.jar plugin.9128973321151732551.jira-fisheye-plugin-6.3.10.jar
plugin.2076016305412409108.jira-fisheye-plugin-3.4.10.jar plugin-license-storage-plugin-2.8.jar
plugin.218965759549051904.jira-importers-plugin-6.1.5.jar querydsl-4.0.7-provider-plugin-1.1.jar
plugin.2211202876682184330.jira-ical-feed-1.0.12.jar stp-3.5.10.jar
/home/
, o está en/home/USER/
:?ls /home/jira-plugins/installed-plugins/
.Respuestas:
Es casi seguro que su cuenta de usuario común no puede acceder al directorio, por lo que el shell no puede enumerar los archivos que coincidirían con el comodín.
Puede confirmar esto fácilmente con un comando como este
Si obtiene un permiso denegado, no hay forma de que el shell pueda expandir un
*
comodín en ese directorio.¿Por qué? Considera tu orden
El orden de procesamiento es (1) expandir los comodines, (2) ejecutar el comando, que en este caso es
sudo
con algunos argumentos que corresponden a unamv
declaración.Puede resolver el problema de dos maneras.
Conviértete en root y luego mueve los archivos
Expanda el comodín después de ejecutar
sudo
fuente
Al hacer
sudo ls
una lista de la carpeta, supongo que uno o más directorios en la ruta son ilegibles para los usuarios normales. Eso explicaría el comportamiento. El malentendido clave aquí es cuando*
se realiza la expansión global del . Lo realiza el shell, antes de invocar cualquier comando. Si el shell no tiene permisos suficientes, no puede expandirlo.Lo que sucede en este caso con más detalle es:
/home/jira-plugins/installed-plugins
como usted mismo, no podrá expandir el patrón global/home/jira-plugins/installed-plugins/*
. Lo dejará sin modificar. Después de esta etapa,*
ya no es especial.sudo
con los argumentosmv
/home/jira-plugins/installed-plugins/*
, y/var/atlassian/application-data/jira/plugins/installed-plugins/
sudo
invocamv
con los argumentos/home/jira-plugins/installed-plugins/*
, y/var/atlassian/application-data/jira/plugins/installed-plugins/
mv
intenta mover un archivo realmente nombrado/home/jira-plugins/installed-plugins/*
, pero no existe y, por lo tanto, el mensaje de error.fuente