¿Cómo puedo obtener hhmmss
un nombre de archivo como este? abcdeProfileList_YYYYMMDDhhmmss.xml
También necesito agregar: entre hhmmss. como hh:mm:ss
Respuesta1
for i in *.xml; do TMP=${i%.xml}; echo ${TMP:(-6)};done
Respuesta2
ls abcdeProfileList_YYYYMMDDhhmmss.xml | cut -d '.' -f 1 | grep -o '......$'
Pero estoy asumiendo muchas cosas.
Tu pregunta necesita ser más específica.
Respuesta3
echo "abcdeProfileList_YYYYMMDDhhmmss.xml" | awk -F"_" '{print $2}'|awk -F"." '{print $1}'| cut -c 9-14
Respuesta4
Suponiendo el entorno Bash:
jvc@BlueBuilder:~$ filename=abcdeProfileList_YYYYMMDDhhmmss.xml
jvc@BlueBuilder:~$ timetag=`echo "${filename/.xml/}" | cut -f2 -d_`
jvc@BlueBuilder:~$ echo "${timetag:8:2}:${timetag:10:2}:${timetag:12:2}"
hh:mm:ss
Si tiene varios archivos, nuevamente Bash:
ls -1 *.xml | cut -f1 -d. | cut -f2 -d_ | while read timetag; do
echo "${timetag:8:2}:${timetag:10:2}:${timetag:12:2}";
done