Làm cách nào tôi có thể chuyển đổi chuỗi ngày / giờ, ví dụ 2011-11-13 08:11:02 +0000
, sang múi giờ địa phương của tôi trên dòng lệnh?
Làm cách nào tôi có thể chuyển đổi chuỗi ngày / giờ, ví dụ 2011-11-13 08:11:02 +0000
, sang múi giờ địa phương của tôi trên dòng lệnh?
Câu trả lời:
Sử dụng date -jf "<input format>" "<input value>" +"<output format>"
.
Sau đây chuyển đổi ngày UTC thành múi giờ địa phương của tôi (CET):
$ date -jf "%Y-%m-%d %H:%M:%S %z" "2011-11-13 08:11:02 +0000" +"%Y_%m_%d__%H_%M_%S"
2011_11_13__09_11_02
Nếu bạn chỉ định định dạng ngày giống nhau cho cả đầu vào và đầu ra, bạn sẽ chỉ chuyển đổi thời gian sang múi giờ địa phương. Nhưng, như trong ví dụ, bạn có thể kết hợp điều đó với một chuyển đổi định dạng.
$TZ
: TZ=EST date -jf %H%z 23+0100 +%I%p
→05PM
date
chứ không phải GNUdate
. Các tùy chọn khá khác nhau.