Quiero hacer la fecha actual en el título de un directorio en /home/chris/Downloads
utilizando mkdir
y date -I
Hacer del título de un directorio la fecha en bash?
me trataron mkdir "fecha -I" que me pone una carpeta llamada "fecha -I" Sin las cotizaciones que da el error
mkdir: invalid option -- 'I'
tratando de hacer que una variable próxima
date= date -I
mkdir -p $date
con la opción -p
, se veía bien, pero durante la inspección, no se creó la carpeta. eliminación -p
me consigue el error
mkdir: cannot create directory `/home/chris/Downloads/': File exists
e incluso apuntando a todo el recorrido
date= date -I
mkdir "/home/chris/Downloads/$date"
me consigue el mismo error que antes
No es que la variable está vacía, me hago eco 'd it y el valor es lo que debería esperar, parece ser que el valor no se sustituye antes de que se cree el directorio. ¿Cuál sería la forma de evitar este problema? Estoy ejecutando Ubuntu 11.04 (Natty Narwhal) si eso te da más información.
La solución no requiere el establecimiento de una variable '$ date', pero su sintaxis para hacerlo está desactivada, y no solo por los palos faltantes o $ (...). En una asignación de variable, no puede tener espacios antes ni después de '='. 'date = date -I' establece' $ date' en la cadena vacía, y luego ejecuta 'date -I'. Es como 'date = foobar date -I', excepto que' $ date' se establece en la cadena vacía en lugar de 'foobar'. La sintaxis correcta sería 'date = $ (date -I)'. –