国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目次
構(gòu)文と基本的な使用法
文字列の比較と引用
パターンマッチングと正規(guī)表現(xiàn)
移植性対電力
最終メモ
ホームページ システムチュートリアル Linux 條件付きテストの[[]と[]]の違いは何ですか?

條件付きテストの[[]と[]]の違いは何ですか?

Jul 03, 2025 am 12:47 AM
bash 條件付きテスト

Bash Scriptsでは、[]はテストコマンドと同義であり、シェル全體の攜帯性に適しています。 [[]]はBASHキーワードであり、より強(qiáng)力で安全な機(jī)能を提供します。 1。[]エラーを回避するために変數(shù)への厳密な參照が必要ですが、[[]]は、言及されていない変數(shù)に対してより寛容です。 2。[[]]は、正規(guī)表現(xiàn)マッチング(=?)およびワイルドカードパターンマッチング(==)をサポートしますが、[]はそうではありません。 3。[[]]は、&& ||の使用を許可します追加のブラケットのない組み合わせ條件。 4。クロスプラットフォームの互換性の場(chǎng)合、[]を使用する必要があります。また、BASH用の場(chǎng)合は、より明確な構(gòu)文と高度な機(jī)能に[[]]を使用することをお?jiǎng)幛幛筏蓼埂?

條件付きテストの[[]と[]]の違いは何ですか?

シェルスクリプト、特にBashでは、 [ ]または[[ ]]いずれかを使用して條件付きテストが表示されることがよくあります。それらは似ており、両方ともテスト條件に使用されるかもしれませんが、あなたがしようとしていることに応じて重要ないくつかの重要な違いがあります。


構(gòu)文と基本的な使用法

[ ][[ ]]の両方を使用して、式を評(píng)価し、真または誤った結(jié)果を返します。ただし、フードの下ではまったく同じではありません。

  • [ ]testコマンドの同義語です。異なるシェル間でよりポータブルです。
  • [[ ]] 、強(qiáng)化された機(jī)能を提供するために後で導(dǎo)入されたBASHキーワード(コマンドではありません)です。

この違いのため、 [[ ]]により、柔軟性が高まり、変數(shù)や演算子を扱う際にいくつかの一般的な落とし穴を回避できます。


文字列の比較と引用

最も顕著な違いの1つは、各各違いが文字列の比較と引用されていない変數(shù)を処理する方法です。

[ ]を使用すると、変數(shù)が空になっているか、スペースが含まれていて引用されていない場(chǎng)合、エラーや予期しない動(dòng)作を引き起こす可能性があります。

 if [$ name = "John"];それから
  エコー「マッチ」
fi

$nameが空または設(shè)定されている場(chǎng)合、これによりunary operator expectedようなエラーがスローされます。

引用符を使用するのに役立ちます:

 if ["$ name" = "John"];それから
  エコー「マッチ」
fi

しかし、 [[ ]]では、引用はまだ良い習(xí)慣ですが、常に必要ではありません。

 if [$ name == "John"]];それから
  エコー「マッチ」
fi

$nameが空であっても、これは失敗しません。これにより[[ ]]多くの場(chǎng)合より安全になります。

また、注目に値する:

  • [[ ]]內(nèi)部では、パターンマッチングに==使用できます。
  • 條件を&&||と組み合わせることができます余分な親がいない。

パターンマッチングと正規(guī)表現(xiàn)

これは[[ ]]本當(dāng)に輝く場(chǎng)所です。

[[ ]]內(nèi)部では、 =~を使用して正規(guī)表現(xiàn)を一致させることができます。

 if [["2024-03-15" =? ^[0-9] {4}  -  [0-9] {2}  -  [0-9] {2} $];それから
  エコー「有効な日付形式」
fi

[ ]內(nèi)部で正規(guī)表現(xiàn)を行うことはできません。最も近いのは、 grepのような外部ツールと組み合わせることです。これは、効率が低く、読みにくいです。

また、 [[ ]] 、シェルスタイルのワイルドカードを使用して==でパターンマッチングをサポートします。

 if [$ filename == *.log]];それから
  エコー「ログファイル」
fi

移植性対電力

さまざまなシェルやシステム(ダッシュまたは古いボーンシェルなど)を越えて実行する必要があるスクリプトを書いている場(chǎng)合は、 [ ]testに固執(zhí)します。

ただし、Bashを具體的にターゲットにしている場(chǎng)合(これは非常に一般的です)、 [[ ]] 、より良い構(gòu)文、引用符の少ない頭痛、より強(qiáng)力な機(jī)能を提供します。

だからここに簡(jiǎn)単な要約があります:

  • [ ]を使用して、最大限の移植性を?qū)g現(xiàn)します。
  • [[ ]]を使用して、クリーナーの構(gòu)文とBASHの高度な機(jī)能を使用します。

最終メモ

[ ][[ ]]の間の小さな違いを見落とすのは簡(jiǎn)単ですが、これらのニュアンスは信頼性と読みやすさに影響を與える可能性があります。たとえば、 [ ]で引用符を忘れるとスクリプトが破損する可能性がありますが、 [[ ]]はより忘れられます。

また、 =~または&& - のようなbash固有の演算子と[ ]しないでください。これは機(jī)能せず、エラーを引き起こします。

基本的にそれだけです。

以上が條件付きテストの[[]と[]]の違いは何ですか?の詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國(guó)語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見つけた場(chǎng)合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡(jiǎn)単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國(guó)語版

SublimeText3 中國(guó)語版

中國(guó)語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Windows でシェル スクリプト ファイルを?qū)g行するさまざまな方法 Windows でシェル スクリプト ファイルを?qū)g行するさまざまな方法 Apr 13, 2023 am 11:58 AM

Linux 用 Windows サブシステム 最初のオプションは、Linux バイナリ実行可能ファイルを Windows システム上でネイティブに実行するための互換性レイヤーである Windows サブシステム for Linux または WSL を使用することです。ほとんどのシナリオで機(jī)能し、Windows 11/10 でシェル スクリプトを?qū)g行できるようになります。 WSL は自動(dòng)的には利用できないため、Windows デバイスの開発者設(shè)定を通じて有効にする必要があります。これを行うには、[設(shè)定] > [更新とセキュリティ] > [開発者向け] に移動(dòng)します。開発者モードに切り替え、プロンプトを確認(rèn)して [はい] を選択します。次にWを探します

Ubuntu Bash のパフォーマンス比較: Ubuntu と Win10 Anniversary Edition Ubuntu Bash のパフォーマンス比較: Ubuntu と Win10 Anniversary Edition Jan 04, 2024 pm 09:36 PM

今年の初めに Microsoft と Canonical が Windows 10 Bash と Ubuntu ユーザー空間をリリースしたとき、私は Windows 10 上の Ubuntu でネイティブ Ubuntu と比較していくつかの予備的なパフォーマンス テストを?qū)g行しようとしました。今回は、ネイティブ純粋な Ubuntu 間のベンチマーク比較について詳しく公開しました。 Ubuntu と Windows 10。 Windows 用の Linux サブシステム テストはすべてのテストを完了し、Windows 10 Anniversary Update とともにリリースされました。デフォルトの Ubuntu ユーザー スペースはまだ Ubuntu14.04 ですが、16.04 にアップグレードできます。したがって、テストは最初に 14.04 でテストされ、完了後、システムは 16.04 にアップグレードされます。

A の B 乗を求める Bash プログラム? A の B 乗を求める Bash プログラム? Aug 30, 2023 pm 09:01 PM

ここでは、bash スクリプトを使用して數(shù)値 A の B 乗を取得する方法を見ていきます。ロジックは簡(jiǎn)単です。これを行うには、「**」演算子またはべき乗演算子を使用する必要があります。この概念を明確に理解するために、次のプログラムを見てみましょう。例#!/bin/bash#GNUbashScripta=5b=6echo "$(($a**$b))" 出力 15625

あまり知られていない 5 つの最新の Bash スクリプト テクニック あまり知られていない 5 つの最新の Bash スクリプト テクニック Jun 26, 2023 pm 08:36 PM

プログラマは多くの場(chǎng)合、Bash コマンド言語を使用してシェル スクリプトを作成し、手動(dòng)タスクを自動(dòng)化します。たとえば、さまざまな構(gòu)成、ファイル操作、ビルド結(jié)果の生成、およびさまざまな DevOps 関連アクティビティのための Bash スクリプトを作成します。ほとんどすべての Unix 系または Unix ベースのオペレーティング システムでは、プリインストールされた Bash インタープリタがユーザーに提供されるため、Bash を使用して、より移植性の高い自動(dòng)化スクリプトを作成できます。すでにご存知のとおり、Bash スクリプトとは、Bash コマンド言語、組み込み Bash コマンド、および GNU Core Tools などのコア オペレーティング システム CLI プログラムの構(gòu)文を使用して一連のコマンドを作成することを指します。標(biāo)準(zhǔn)的で昔ながらの Bash スクリプトは通常、いくつかのコマンドを?qū)g行し、ターミナルにプレーン テキストを表示します。

bash の脆弱性再発の分析例 bash の脆弱性再発の分析例 May 19, 2023 am 11:13 AM

BourneAgainShell (略して BASH) は、GNU/Linux で最も人気のある SHELL 実裝です。1980 年に誕生しました。數(shù)十年の進(jìn)化を経て、単純なターミナル コマンド ライン インタプリタから、GNU システムと深く統(tǒng)合された多機(jī)能インターフェイスに進(jìn)化しました。 . . Bash、Unix シェルの一種。最初の正式バージョンは 1989 年にリリースされました。當(dāng)初は GNU オペレーティング システムで使用することが計(jì)畫されていましたが、これをデフォルトのシェルとして使用する Linux や MacOSXv10.4 など、ほとんどの Unix 系オペレーティング システムで実行できます。 Microsoft Windows 上の Cygwin および MinGW にも移植されており、MS-Windows 上でも使用できます。

Windows 11 Bug Bash ステッカーを入手できるのは今日が最終日です Windows 11 Bug Bash ステッカーを入手できるのは今日が最終日です May 13, 2023 pm 08:25 PM

先週 Microsoft は、長(zhǎng)期および短期的に Windows 11 の開発を改善する (できれば) タスクに Windows 內(nèi)部関係者を參加させることを目的としたキャンペーンである BugBash を発表しました。 3 月 16 日時(shí)點(diǎn)では、完了できるミッションの數(shù)は約 26 でしたが、現(xiàn)在では 75 という驚異的な數(shù)に増加しています。ただし、ここにキッカーがあります。BugBash は 3 月 22 日に終了し、フィードバック ハブに表示される BugBash 固有のステッカーを獲得する機(jī)會(huì)も終了します。 Windows11 BugBash に參加するには、開発チャネルから最新の Windows 11 プレビュー ビルド (build2) を取得する必要があります。

數(shù)値が素?cái)?shù)かどうかをチェックする Bash プログラム 數(shù)値が素?cái)?shù)かどうかをチェックする Bash プログラム Sep 23, 2023 pm 09:45 PM

Bash (GNUbash とも呼ばれます) は、コマンド言語および Unix シェル スクリプトであり、オペレーティング システムのコマンド ライン インタプリタです。 Brian Fox によって設(shè)計(jì)され、Bourneshell に代わる無料のソフトウェアです。 1989 年に初めてリリースされ、macOS、Linux ベースのオペレーティング システム、およびその他の Linux ベースのソフトウェアで選択されるログイン シェルになりました。素?cái)?shù)とは、數(shù)値自體と 1 の 2 つの因數(shù)のみを持つ數(shù)値です。たとえば、2、3、5、7、11、13、17、19、23、29 などです。ここでは、數(shù)値が與えられ、その數(shù)値が素?cái)?shù)かどうかを判斷する必要があります。入力:數(shù)値出力:&l

すぐに Linux コマンド ライン マスターになれる 8 つのシェル コマンド すぐに Linux コマンド ライン マスターになれる 8 つのシェル コマンド Jun 17, 2023 am 09:38 AM

プログラミングのしっかりとした基礎(chǔ)を持つことは、優(yōu)れたソフトウェア エンジニアにとって明らかに必須の資質(zhì)です。 Python のようなインタープリタ言語であっても、C++ のようなコンパイル言語であっても、少なくとも 1 つのプログラミング言語をマスターすることが重要です。ただし、これは真にバランスのとれたエンジニアになるための 1 つの側(cè)面にすぎません。シェル環(huán)境で道に迷ってしまうと、その基礎(chǔ)知識(shí)は役に立ちません。 Bash でコマンドを柔軟に使用すると、従來のプログラミング言語では到達(dá)できない領(lǐng)域に到達(dá)できます。実際には、より強(qiáng)力なプログラミング言語を使用する必要がない場(chǎng)合もあります。シェルのみを使用することで、追加の依存関係を必要とせずに、必要なタスクをより迅速かつ簡(jiǎn)単に実行できます。この記事では、非常に便利な Bash コマンドをいくつか紹介します。

See all articles