Tôi cần sao chép các tệp từ thư mục này sang thư mục khác, ở đây thông tin nguồn và đích nằm trong tệp văn bản.
Nội dung tệp: res.txt
/ var / lib / jenkins / công việc kiểm tra \ build / workspace / MainApp / app / src / main / res / drawable / logo_Station.png
Ở đây tôi đang cố gắng phân tách chuỗi với dấu phân cách "=" và gán nó cho các biến tương ứng. Và, cần kích hoạt lệnh sao chép.
Để thực hiện điều trên, tôi đang cố gắng tách chuỗi thành một mảng và gán giá trị phần tử chỉ mục mảng cho các biến cục bộ
lines=/var/lib/jenkins/jobs/Android\ Gradle\ test\ build/workspace/MainApp/app/src/main/res/drawable-hdpi/logo_splash.png=/var/lib/jenkins/jobs/Android\ Gradle\ test\ build/workspace/MainApp/app/src/main/res/drawable/logo_splash.png
SOURCE=""
DEST=""
echo $lines | awk '{split($0,numbers,"=")} END {
for(n in numbers){
if (n == 1) {
SOURCE = ${numbers[1]}
}
else if (n == 2) {
DEST= ${numbers[2]}
}
}}'
echo ${numbers[1]}
echo ${numbers[2]}
bị lỗi như
awk: {split($0,numbers,"=")} END {for(n in numbers){ SOURCE = ${numbers[1]}}
awk: ^ syntax error
và cho echo Nhận đầu ra là
+ echo
+ echo
@Gombai Sandor, tôi đã thay đổi ở trên theo đề xuất của bạn và nó hoạt động.
SOURCE=$(echo $lines | awk -F= '{print $1}')
echo "source is " $SOURCE
DESTINATION=$(echo $lines | awk -F= '{print $2}')
echo "destination is " $DESTINATION