ฉันทำสองคน pipelines;เรื่องนี้ x="$(ls -1p | grep "/$" | tr -d "/")"
ทั้งหมดเอารายการย่อยของไดเรกทอรีจากที่ทำงานไดเรกทอรีและนี่ y="$(ls -1p | grep "/$"| grep \ | tr -d "/")"
ได้รับรายการย่อยของไดเรกทอรีที่มีช่องว่างในไดเรกทอรีทำงาน.
ดังนั้นตอนนี้สิ่งที่ฉันพยายามจะทำก็คือต้องการจะแทนที่ตำแหน่งของไดเรกทอรีที่มีช่องว่างและใส่มันในที่สุดด้านบน,ie., พูดด้านล่างนี้เป็นตัวแทนของผ dirs:
Dir1
Dir2
Dir 3
ตอนนี้ Dir 3
ไปด้านบน:
Dir 3
Dir1
Dir1
for I in $x; do
for X in $y; do
if [[ $I == $X ]];then
sed "/"$X"/d" "$I"
fi
done
echo "$I"
done
อยู่เหนือของวงต้องทำอย่างนั้นทำงานหนักหรอก มันรอยนิ้วมือทั้งหมดย่อย dirs นั้นไม่มีช่องว่างแต่รอยนิ้วมือมันเป็น:
Dir1
Dir2
sed: Dir: No such file or directory
Dir
sed: 3: No such file or directory
3
ถ้ามีใครสามารถช่วยออกไปนั่นจะเป็น greatly นเกียรติอย่างยิ่ง