序文 この記事では、山括弧のその他の用途をさらに詳しく見ていきます。 前回の記事では、山括弧 (<>) とその使用例をいくつか紹介しました。この記事では、山括弧のその他の用途をさらに詳しく見ていきます。 < を使用すると、「ごまかし」効果が得られ、他のコマンドにコマンドの出力がファイルであると思わせることができます。 たとえば、ファイルをバックアップするときに、バックアップが完了したかどうかわからない場合は、元のディレクトリからコピーされたすべてのファイルがディレクトリにすでに含まれているかどうかを確認する必要があります。これを試すことができます: 差分 <(ls /オリジナル/dir/) <(ls /バックアップ/dir/) diff コマンドは、2 つのファイルの違いを行ごとに比較するためのツールです。上記の例では、< は diff に 2 つの ls コマンドの出力結果をファイルであると認識させ、それらの差異を比較できるようにするために使用されています。 < と (...) の間にスペースがないことに注意してください。 上記のコマンドをイメージ ディレクトリとそのバックアップ ディレクトリで実行してみたところ、出力は次のようになりました。
出力内の < は、ファイル Dv7bIIeUUAAD1Fc.jpg:large.jpg が左側のディレクトリ (/My/Pictures) に存在するが、右側のディレクトリ (/My/backup/Pictures) には存在しないことを示しています。つまり、バックアップ プロセス中に問題が発生し、ファイルが正常にバックアップされなかった可能性があります。 diff で出力が表示されない場合は、2 つのディレクトリ内のファイルは同一です。 これを見ると、< を使用して、ファイル形式を受け入れる必要のあるコマンドに、一部のコマンド ラインの出力内容をファイルとして提供できるため、前の記事の「お気に入りの俳優の並べ替え」の例では、いくつかの中間ステップをスキップして、出力内容に対して直接並べ替え操作を実行できると考えるかもしれません。 実際、この例は次のように簡略化できます。 sort -r <(while read -r name surname films;do echo $films $name $surname ; done < CBactors) ここで文字列 また、山括弧のリダイレクト機能を使用する別の方法もあります。 変数を渡すために echo とパイプ (|) を使用する方法は、誰もがよく知っていると思います。文字列変数をすべて大文字に変換する場合は、次のようにします。 myvar="Hello World" echo $myvar | tr '[:lower:]' '[:upper:]' HELLO WORLD tr コマンドは文字列を特定の形式に変換できます。上記の例では、tr を使用して文字列内のすべての小文字を大文字に変換しています。 この転送プロセスの焦点は変数ではなく、変数の値、つまり文字列 Hello World であることを理解することが重要です。このような文字列は HERE 文字列と呼ばれ、「これは処理する文字列です」という意味です。ただし、上記の例では、次のように、より直感的な方法で処理することもできます。 tr '[:lower:]' '[:upper:]' <<< $myvar このショートカットでは、エコーやパイプを使用する必要はなく、代わりにこれまで説明してきた山括弧を使用します。 要約する これら 2 つの単純な記号 < と > を使用すると、非常に多くのことが達成できることがわかります。Bash は、作業の柔軟性を高めるために、ここでも多くのオプションを提供します。 もちろん、Bash コマンドにさらなる利便性をもたらすシンボルは他にもたくさんあるので、紹介はまだ終わりではありません。しかし、それらを完全に理解していないと、記号だらけの Bash コマンドは意味不明なものにしか見えません。今後もこのような Bash シンボルについてさらに詳しく説明していきますので、また次回お会いしましょう。 さて、以上がこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に一定の参考学習価値を持つことを願っています。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM をご愛顧いただきありがとうございます。 以下もご興味があるかもしれません:
|
>>: JavaScript はチェックボックスの選択機能を実装します
目次1. 依存関係をインストールする2. vue.config.js ファイルで pwa を設定しま...
目次ステップ 1: root ユーザーとしてログインします。ステップ 2: 新しいデータ テーブルを...
問題の原因:スレーブサーバーがクローンマスターサーバーである場合、server-uuidの値は同じで...
layui テーブルには複数行のデータがあります。外部入力コンテンツを通じて、指定された行を見つけ...
docker コンテナの下に kong クラスターを構築するのは非常に簡単です。公式サイトの紹介も非...
MySQLパスワードは正しいが、ローカルでログインできない -1045 ユーザー 'roo...
トラブル発生が突然で、業務も迫っていたため、現場のスクリーンショットを撮る時間がありませんでしたので...
これは実際には IE の公式ドキュメントではありません。他の人が実践を通じて開発した IE6 のデフ...
成果を達成する html <h2>CSS3 タイムライン</h2> <...
v-for ディレクティブリストといえば、ループについても触れなければなりません。v-for 命令は...
この問題に関して、オンライン リソースをたくさん見つけました。ここにいくつかの方法を示します。コード...
1. はじめにあなたのウェブサイトはまだインターネット上に公開されたままですか?ここでは、HTTPS...
導入:インターネット上にはデータベースの最適化に関する情報や方法が数多くありますが、その多くは品質に...
ツール型ウェブサイトについて、まず疑問に思うのは、無数のオンラインウェブサイトの中で、どのようなウェ...
背景次の図に示すように、 react-color を使用してフロントエンド インターフェースのカラー...