MySQL Bash for 루프

MySQL Bash for 루프

MySQL_query_table

"Course Column"을 기반으로 여러 디렉토리를 만들었습니다.

예:

/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/.

동일한 에만 적용됩니다 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.

이를 수행하는 방법에 대한 아이디어.

관련 정보