ฟังก์ชันด้านล่างใช้สำหรับตรวจสอบmv
ไวยากรณ์อย่างละเอียด โปรดทราบว่าใช้งานได้เพียง 2 ข้อคือ SOURCE และ DESTINATION และไม่ตรวจสอบการ-t
ตั้งค่าสถานะ
~/.bashrc
ฟังก์ชั่นที่จะถูกวางลง หากต้องการใช้งานทันทีให้เปิดเทอร์มินัลใหม่หรือเรียกใช้source ~/.bashrc
mv_check()
{
# Function for checking syntax of mv command
# sort of verbose dry run
# NOTE !!! this doesn't support the -t flag
# maybe it will in future (?)
# check number of arguments
if [ $# -ne 2 ]; then
echo "<<< ERROR: must have 2 arguments , but $# given "
return 1
fi
# check if source item exist
if ! readlink -e "$1" > /dev/null
then
echo "<<< ERROR: " "$item" " doesn't exist"
return 1
fi
# check where file goes
if [ -d "$2" ]
then
echo "Moving " "$1" " into " "$2" " directory"
else
echo "Renaming " "$1" " to " "$2"
fi
}
นี่คือการทดสอบวิ่งบางส่วน:
$> mv_check TEST_FILE1 bin/python
Moving TEST_FILE1 into bin/python directory
$> mv_check TEST_FILE1 TEST_FILE2
Renaming TEST_FILE1 to TEST_FILE2
$> mv_check TEST_FILE1 TEST_FILE 2
<<< ERROR: must have 2 arguments , but 3 given
$> mv_check TEST_FILE1 TEST_FILE\ 2
Renaming TEST_FILE1 to TEST_FILE 2
$> mv_check TEST_FILE1 "TEST_FILE 2"
Renaming TEST_FILE1 to TEST_FILE 2
$> mv_check TEST_FILE1
<<< ERROR: must have 2 arguments , but 1 given
man mv
ฉันสามารถเห็นเฉพาะ-i