2012-12-24 34 views

Trả lời

61

Hãy thử điều này:

awk '{ print toupper($0) }' <<< "your string" 

Sử dụng một file:

awk '{ print toupper($0) }' yourfile.txt 
+4

lưu ý, ký tự đặc biệt sẽ không thành công: '' 'awk '{print toupper ($ 0)}' <<< stéphane – SvennD

+3

@SvennD Phụ thuộc vào phiên bản - không hoạt động với mawk 1.3.3, nhưng có vẻ hoạt động tốt với GNU Awk 4.0.1 và 4.1. 1. –

3

Giống như

< yourMIXEDCASEfile.txt awk '{print toupper($0)}' > yourUPPERCASEfile.txt 
+2

UUCA http://partmaps.org/era/unix/award.html – Rubens

+2

Ok ... làm thế nào về 'awk '{print toupper ($ 0)}' yourMIXEDCASEfile.txt> yourUPPERCASEfile.txt' – Silviu

+1

nó không phải là tôi để downvote bài viết của bạn, nhưng giải pháp thứ hai, không có mèo, là cách tốt hơn – Rubens

19

Bạn có thể sử dụng awk, nhưng tr là công cụ tốt hơn:

tr a-z A-Z < input 

hoặc

tr [:lower:] [:upper:] < input 
+1

Lưu ý rằng (như của coreutils 8.23) nó sẽ không chuyển đổi các ký tự nhấn mạnh. –

3

Hãy thử điều này:

$ echo mix23xsS | awk '{ print toupper($0) }' 
MIX23XSS 
0

Nếu Perl là một lựa chọn:

perl -ne 'print uc()' file 
  • -n vòng quanh tập tin đầu vào, không tự động in dòng
  • -e thực thi mã perl trong dấu ngoặc kép
  • uc() = chữ hoa

Để in tất cả chữ thường:

perl -ne 'print lc()' file 
Các vấn đề liên quan