Tôi đang cố gắng viết một tập lệnh shell yêu cầu một ký tự ASCII trong phạm vi AZ hoặc az và trả về giá trị số tương đương của nó. Ví dụ: đầu ra có thể trông như sau:
scarlet$ Please type a character between A and Z or between a and z:
scarlet$ A
scarlet$ The decimal value of A is: 65
Nỗ lực của tôi:
#!/bin/bash
echo Enter a letter:
read A
echo -n ${A} | od -i | head -1 | cut -b 10- | tr -d " "
echo -n A
làm những gì bạn mong đợi? Nếu không, hãy thử printf
thay thế. Có od -i
làm những gì bạn mong đợi? Nếu không, hãy thử od -t d1
.