쉘 스크립트를 사용하여 반복적인 프로세스를 자동화하는 방법 [닫기]

쉘 스크립트를 사용하여 반복적인 프로세스를 자동화하는 방법 [닫기]

따라서 기본적으로 명령을 실행해야 합니다. 예를 들어 명령이 $ exampleCommand var1_1완료된 후에 실행한 다음 등을 $ exampleCommand var1_2실행합니다 var2_1. 이 명령을 50-60개의 파일에서 실행하고 있으며 각 파일의 크기는 90+GB이므로 수동으로 수행하는 것은 불가능하며 나는 그런 일을 자동화하려고 시도한 적이 없습니다. 이 작업을 수행하는 방법에 대한 몇 가지 팁을 알려주시면 감사하겠습니다. .sh 파일을 생성한 다음 사용 중인 서버에서 실행하는 것 같나요?

답변1

이는 올바른 방향을 알려줄 것입니다.

$ for i in {1..3}; do for j in {x..z}; do echo ${i}_${j}; done; done
1_x
1_y
1_z
2_x
2_y
2_z
3_x
3_y
3_z

답변2

귀하가 요청한 질문은 약간 글로벌하며 특정 작업을 자동화하는 방법은 여러 가지가 있습니다. 이 문제는 일반적으로 다양한 파일 이름이나 정규식 일치 패턴에서 발생합니다. 스크립트를 실행하기 전에 파일을 백업하십시오.

어떤 방향으로 나아가려면 다음 예를 참조하세요.

array=(file1 file2 file3)
for i in "${array[@]}"; do
    echo "$i"
done

user@workdir: # cd /dir && ls > ../files.list

main() {
    local list='/workdir/files.list'
    for item in $(cat "$list"); do
        func_read "$item"
    done
}

func_read() {
    local var="$1"
    [[ ! -d "$var" ]] && \
        while read -r line; do
            echo "$line"
        done < "$var"
}
main

관련 정보