我根据“课程专栏”创建了一堆目录
例子:
/tmp/Caldera/
/tmp/Basic Navigation/
/tmp/Signs and Symbols/
我有一堆 json 文件示例:
0e689686-4f5a-4800-90ac-771cfe228532.json
bb6632cc-633a-4cc9-9188-1407d7c9cf38.json
1a9e620f-253a-44ee-a68d-11fb7fe8d082.json
上述这些文件需要放置在它们的目录中:
0e689686-4f5a-4800-90ac-771cfe228532.json ---> /tmp/Caldera/
bb6632cc-633a-4cc9-9188-1407d7c9cf38.json ---> /tmp/Basic Navigation/
1a9e620f-253a-44ee-a68d-11fb7fe8d082.json ---> /tmp/Signs and Symbols/
我将使用一个名为“INFO”的变量从 SQL 中提取此查询。
echo "$INFO" | awk '{ print $3 }'
然后在文件“.json”末尾添加扩展名,如下所示"0e689686-4f5a-4800-90ac-771cfe228532.json"
,最后将文件从源目录移动到/tmp/Caldera/
only 中。
仅适用于相同bb6632cc-633a-4cc9-9188-1407d7c9cf38.json ---> /tmp/Basic Navigation/
。
我想我需要使用 for 循环,例如:
INFO=$( /usr/bin/mysql -s
--password=$MYSQL_PASSWORD
--user=$MYSQL_USER
--host=$MYSQL_HOST
--database=$MYSQL_DB
--disable-column-names
--execute="SELECT
cl.uuid AS compiled_lessons_uuid,
cl.videos_uuid,
cl.assessments_uuid,
cl.lessons_uuid,
les.name AS lesson
FROM
compiled_lessons cl
JOIN
lessons les
ON
les.uuid = cl.lessons_uuid;" )
SOURCE_DIR="/opt/assessments/
for line in $( cat echo "$INFO" | awk '{ print $3.json }' ) ; do
mv "$SOURCE_DIR"/$line /tmp/{lesson}/
done
课程参考{lesson}
附图中的专栏。示例/tmp/Caldera
如上。
bash 应该以某种方式检查$3
并将其移至$5
.这才是真正的问题。
关于如何执行此操作的任何想法。