ฉันค่อนข้างใหม่สำหรับสคริปต์ใน Linux สิ่งที่ฉันพยายามจะได้คือสคริปต์ง่ายๆที่ค้นหาไฟล์ด้วยชื่อที่ถูกต้องจากนั้นคัดลอกไฟล์นั้นไปยังโฟลเดอร์อื่น
ดังนั้นโดยพื้นฐานแล้วมันควรจะทำงานเหมือน "./findandcopy [filename]" นี่คือสิ่งที่ฉันได้รับ:
#!/bin/sh
ARGS=1
E_BADARGS=65
E_NOFILE=66
if [ $# -ne "$ARGS" ] # Correct number of arguments not passed
then
echo "Usage: `basename $0` filename"
exit $E_BADARGS
fi
'find ./ -name \$1' -exec cp {} /home/marc/ \;
แต่นั่นจะไม่ทำงานสำหรับฉัน ขอบคุณสำหรับความช่วยเหลือใด ๆ
find .
แทนfind ./
- คุณไม่จำเป็นต้องพิมพ์ทับในตอนท้ายของชื่อไดเรกทอรีและถ้าคุณได้รับในนิสัยของการพิมพ์./
เมื่อคุณหมายถึงไดเรกทอรีปัจจุบัน (ซึ่ง.
จะพอเพียง) แล้วสักวันหนึ่งคุณ' จะพิมพ์โดยไม่ตั้งใจ/
หรือ/.
อาจมีผลลัพธ์ที่ร้ายแรง คุณไม่ต้องการ/
ที่ส่วนท้ายของ/home/marc/
ทั้ง