論理は非常に単純です。curl、次にdiffを介して異なるサーバー上で結果セットを取得することに他なりませんが、ここで注意すべき点がいくつかあります。まず、JSONは1行です。直接のdiffは意味を失います;第二に、JSONの漢字はエンコードされ、それは見やすくはありません;さらに、JSONのフィールドの順序は無関係なので、diffの前にソートするのが最善です。 JSONデータをフォーマットするときにBashを使わず、代わりに PHPを使ったことを説明します。 ここで、 "getoptの" 利用Zhidezhuyi次のようにbashで 使用する場合は、さまざまなツールを使用できますが、デフォルトでは "colordiff"が最初に使用されます。 ""この記事が書かれて間もなく、コマンドラインからJSONを解析するための優れたツール "jq"が見つかりました。
:
#!/bin /bashRM = /bin /rmPHP = /usr /bin /phpCURL =は/usr /binに/curlDIFF =は/usr /binに/diffVIMDIFF =は/usr /binに/vimdiffCOLORDIFF =は/usr /binに/colordiffusage(){エコー"使用:$ 0 --uri =< URI> --old =< IP> --new =< IP>"}フォーマット(){$ PHP -R「関数ksort_recursive;(!IS_ARRAY($配列))(&#038 $配列){{戻った場合;} ksort($ ($ keyとしてのarray_keys($ array));})$ options = JSON_PRETTY_PRINT | Array); foreach($ keyとしてのarray_keys($ array)){ksort_recursive($ array [$ key]);}}
JSON_UNESCAPED_UNICODE; $配列= json_decode($のARGN、TRUE); ksort_recursive($配列);エコーjson_encode($配列、$オプション);「}リクエスト(){$ CURL -s -H"ホストの:$ 1""。 Http://$ 2 $ 3"評価セット - $(getopt -q -o" h< -l" host:、uri:、old:、new:、vim、help" - " $ @ 「true)の場合、--host)HOST = $ 2; shift 2;; --uri)URI = $ 2; shift 2;; --old)OLD = $ 2; shift 2;; --new)NEW = $ 2; shift 2;; --vim)VIM =" Y"; shift 1;; -h |
--help)usage; exit 0;; - )break;; esacdoneif [[-z" $ URI" |;
|
-z" $ OLD" |
|
-z" $ニューQUOT;]]、[[-z" 1fiif次に使用出口; $のHOST"]];次に、HOST =" www.foobar.com" fiOLD_FILE = $(mktempを)NEW_FILE = $(mktempの)要求" $ HOST"" $ OLD"" $ URI" |
フォーマット> $ OLD_FILEリクエスト" $ HOST"" $ NEW"" $ URI> |
フォーマット> $ NEW_FILEif [[" $ VIM" ==" Y"]];次に$はvimdiff $ OLD_FILE $ NEW_FILEelif [-x" $ COLORDIFF"]];次に$ COLORDIFF -u $ OLD_FILE $ NEW_FILEelse $関連Shenkaoziliao程度DIFF -u $ oLD_FILE $ NEW_FILEfi $ RM -f $ oLD_FILE $ RM -f $ NEW_FILE
zh-CN"],null,[1],zh-TW"]]]
Azureは、ビジネスをパブリッククラウドプラットフォームに移行することを検討している企業の代表の1人です。ただし、マイクロソフトがAzureの高可用性を強調し続けている場合でも、エンタープライズIT
Computer Store News:ドイツのテクノロジーWebサイトからの最新の報告によると、ValveのSteam Boxゲームコンソールは2013年にLinuxで稼働するようになります。
誰もが聞いたはずのディスクレスブートですが、今では多くのインターネットカフェや企業がこの技術を使っていますが、これらのディスクレスシステムはほとんどがWindowsですLinuxのディスクレスブート方
I.概要: Linuxカーネルにプログラムを追加するには、3つの作業が必要です。 1. Linuxカーネルのソースコードの対応するディレクトリにソースコードをコピーする。 2.ディレクトリのKconf
255) (以下のように)パッケージがインストールされているか確認し、インストールされていない場合は(#rpm -ivh nfs-utils-1.0.9-16.el5.i386.rpm)を実行してパ