Tôi đang cố gắng chỉnh sửa tập lệnh bash đầu tiên của mình và tại một thời điểm, tên tệp được chuyển đến tập lệnh dưới dạng $1
. Tôi cần trích xuất tên tập tin mà không cần phần mở rộng.
Hiện tại, tôi giả sử rằng tất cả các tiện ích mở rộng là ba chữ cái nên tôi xóa 4 ký tự cuối cùng để lấy tên tệp:
a="${1:0:-4}"
Nhưng tôi cần có khả năng làm việc với các tiện ích mở rộng có nhiều hơn ba ký tự, như %~n1
trong Windows.
Có cách nào để trích xuất tên tệp mà không cần phần mở rộng từ các đối số không?