私はそれが$ENV{TZ}
のように単純だと仮定していましたが、TZ
環境変数は設定されていませんが、まだ私はEDTにいるということをまだ知っていますので、(chomp(my $tz = qx/date +%Z/);
以外の) 。マシンがPerlで設定されている現在のタイムゾーンを特定するにはどうすればよいですか?
答えて
use POSIX;
print strftime("%Z", localtime()), "\n";
私は%Zについて考えましたが、いくつかのシステムでは動作しないことを覚えています。 –
man strftimeによると、%Zは標準仕様であり、すべてのプラットフォームでサポートされる必要があります。 –
私はこれをPOSIXのドキュメントから覚えていたと思います。タイムゾーンの名前が非標準であるため、 "Z"指定子はあまり知られていません。数値指定子に従うのが最も安全なルートです。しかし、これはおそらく私の目的のために十分安全だと思います。 –
use POSIX;
localtime();
my ($std, $dst) = POSIX::tzname();
tzname()
グローバルtzname
POSIXへのアクセスを提供します - しかし、それは最初の場所に設定するために、あなたはlocaltime()
と呼ばれている必要があります。
あなたがPOSIX
よりポータブル(おそらくはるかに遅い)何かをしたい場合は、日時を使用することができます::このためのタイムゾーン:たぶん
use DateTime::TimeZone;
print DateTime::TimeZone->new(name => 'local')->name();
速く、この:
my @lt = localtime(12*60*60);
my @gt = gmtime(12*60*60);
$tz = @lt[2] - @gt[2];
$tz_ = sprintf("%+03d:00", $tz); # for +02:00 format
回答を補完するには、[編集](http://stackoverflow.com/posts/29400576/edit)ボタンを使用します。 – ZygD
あなただけが必要な場合+05:30
(UTC + 5.5 /インド時間)のように、次のコードを使用することができます。
my @lt = localtime();
my @gt = gmtime();
my $hour_diff = $lt[2] - $gt[2];
my $min_diff = $lt[1] - $gt[1];
my $total_diff = $hour_diff * 60 + $min_diff;
my $hour = int($total_diff/60);
my $min = abs($total_diff - $hour * 60);
print sprintf("%+03d:%02d", $hour, $min);
この回答は上記のPavelの答えに触発されています。
- 1. スクロールビューで現在表示されている領域を特定し、中心を特定するにはどうすればよいですか?
- 2. Perlのネストされたハッシュで特定のキーにアクセスするにはどうすればよいですか?
- 3. 現在のクラスに新しいクラス値を設定するにはどうすればよいですか?
- 4. MPMoviePlayerインスタンス内でユーザーの現在の場所を特定するにはどうすればよいですか?
- 5. OS Xで現在アクティブなアプリケーションをプログラムで特定するにはどうすればよいですか?
- 6. 現在の投稿に関するオフセットを設定するにはどうすればよいですか?
- 7. 特定のHTTPDプロセスによってどのURLが処理されているかを特定するにはどうすればよいですか?
- 8. C#で現在のユーザーのローカル設定フォルダパスを取得するにはどうすればよいですか?
- 9. iOSでデバイス設定の振動モードがプログラムで設定されているかどうかを確認するにはどうすればよいですか?
- 10. Playの現在のディレクトリをアプリのホームディレクトリに設定するにはどうすればよいですか?
- 11. アンドロイドの地図上の現在地にジオポイントを設定するにはどうすればよいですか?
- 12. スレッドが実行されているCPUを特定するにはどうすればよいですか?
- 13. Javaスレッドが実行されているコアを特定するにはどうすればよいですか?
- 14. hudson(現在のジェンキンズ)のjdkの開始を設定するにはどうすればよいですか?
- 15. ブートストラップの特定のグリッドに従ってタブを設定するにはどうすればよいですか?
- 16. どのセル/列にフィルタが設定されているかを特定するにはどうすればよいですか?
- 17. Passport strategy callbackURLの現在のホストを設定するにはどうすればよいですか?
- 18. 移行の現在の「バージョン番号」を設定するにはどうすればよいですか?
- 19. AWSでホストされている外部Javascript設定から現在のページパスを動的に解析するにはどうすればよいですか?
- 20. Silverlight RichTextBoxで書式設定されたテキストを設定するにはどうすればよいですか?
- 21. 設定されたCQWPをページレイアウトに配置して、その配置が設定されるようにするにはどうすればよいですか?
- 22. 現在の場所が表示されないようにmapviewを設定するにはどうすればよいですか?
- 23. 変数を現在の日付と日付に設定するにはどうすればいいですか?
- 24. Perlで冗長コードを特定して削除するにはどうすればよいですか?
- 25. emacsが一定量インデントされた理由を特定するにはどうすればよいですか?
- 26. サブライムテキスト2で使用されている現在のフォントファミリーを特定するにはどうすればよいですか?
- 27. プログラムでJavaでタイムゾーンを設定するにはどうすればよいですか?
- 28. 特定のユーザロールに対してmaxInvalidPasswordAttemptsを設定するにはどうすればいいですか
- 29. 特定の国のタイムゾーンを取得するにはどうすればよいですか?
- 30. 特定のモードでEmacsのfill-columnを設定するにはどうすればよいですか?
私のシステムでは、タイムゾーンは/ etc/localtimeファイルで規制されています。libcはその使用方法を知っているようです。 –