誰でも時々データをコピーして貼り付ける必要があると思います。コピーして貼り付けるためにファイルを開くと、必然的にマウスとキーボードの操作が増え、面倒になります。では、これらの面倒な操作を行わずにコピーと貼り付けを行う方法はあるのでしょうか? 答えは「はい」です。リダイレクトです。リダイレクトは、マウスやキーボードを頻繁に操作せずにデータ転送を完了できる効率的な方法です。リダイレクトは、入力リダイレクトと出力リダイレクトの 2 つのタイプに分けられます。すべてのプログラムには入力または出力があるため、入力と出力のリダイレクトは、あらゆるプログラミング言語またはスクリプト言語のネイティブ機能です。 コンピューターを操作するたびに、リダイレクトが必ず発生します。リダイレクトの使い方を学ぶと、コンピューターの操作性が向上するだけでなく、作業効率も向上します。そこで、Liang Xu が Linux システムでのリダイレクトの一般的な使用法を説明します。 Linux のデータフロー Linux リダイレクトについて話すとき、次の 3 つのデータ ストリームについて言及する必要があります。
これらのデータ フローの存在を把握しておくと、Shell を使用するときにデータ フローをより適切に制御できます。 Linux システムでは、標準入力、標準出力、標準エラーはすべてファイルとして存在します。これらは /dev ディレクトリで確認できます: $ ls /dev/std* /dev/stderr /dev/stdin /dev/stdout 出力のリダイレクト Linux システムでは、> 文字を使用して出力をリダイレクトします。たとえば、ls コマンドの出力をファイルにリダイレクトするには、次のようにします。 $ ls > リスト.txt 上記コマンドを実行すると、出力情報が list.txt ファイルにリダイレクトされるため、ls コマンドの出力情報は画面に表示されなくなります。 さらに、リダイレクトには多くの用途があります。ファイルの内容をコピーするためにも使用できます。テキスト ファイルのコピーに限定されず、バイナリ ファイルもコピーできます。 $ 猫画像.png > 画像.png あるファイルの内容を別のファイルの末尾にコピーしたい場合は、次のように > 文字を >> 文字列に置き換えるだけです。 $ cat lxlinux >> alvi 入力のリダイレクト 出力のリダイレクトとは対照的に、入力のリダイレクトには < 文字が使用されます。 入力リダイレクトは、入力情報をパラメータとしてコマンドにリダイレクトできます。この機能はあまり使用されないかもしれませんが、コマンドにパラメータのリストが必要で、これらのパラメータがすべてファイル内にあり、ファイルからターミナルにすばやくコピーして貼り付けたい場合、この機能が役立ちます。 たとえば、package.list にはインストールする必要があるパッケージのリストが含まれており、すべてのパッケージをすばやくインストールしたい場合は、次のコマンドを実行するだけで、package.list 内のすべてのパッケージを一度にインストールできます。 $ sudo dnf install $(<package.list) 入力リダイレクトの一般的な用途は、Here-document (略して Here-doc) と Here-string です。 here-doc は、特別なファイル終了マーカーに遭遇するまで、入力テキストのブロックを標準入力ストリームにリダイレクトします (ファイル終了マーカーは任意の一意の文字列にすることができますが、ほとんどの人はデフォルトで EOF を使用します)。 ターミナルで次のコマンドを入力してみてください (2 番目の EOF 文字列が終了するまで)。 $ 猫 << EOF > アルヴィン > linux.net について > 終了 予想される出力は次のようになります。
Here-doc は、複数行のテキストをファイルまたは画面にダンプするために Bash スクリプト作成者が使用する一般的なトリックです。 here-string は here-doc に似ていますが、1 つの文字列だけ、または引用符で囲まれた複数の文字列を取ります。 $ 猫 <<< アルビン アルヴィン $ cat <<< "alvin lxlinux.net" アルビン lxlinux.net エラーメッセージのリダイレクト エラー メッセージは、デフォルトでは stderr と呼ばれるストリームに送信され、2> を使用してリダイレクトできます。たとえば、エラー メッセージを output.log というファイルにリダイレクトするには、次のようにします。 $ ls /nope 2> 出力.log データを/dev/nullにリダイレクトする 標準入力、標準出力、標準エラーと同様に、Linux ファイルシステムにもそれに対応するファイルがあり、これは null と呼ばれ、/dev ディレクトリに配置されます。読みやすくするために、スラッシュを省略して、dev null として直接読む人も多くいます。 /dev/null にはデータは保存されず、/dev/null に書き込まれたデータは、虚空に投げ込まれたかのように、最終的には失われます。したがって、リダイレクトを使用して、不要なデータを /dev/null にパイプすることができます。たとえば、find コマンドの出力は非常に詳細になることが多く、次のように、ファイルの検索時に権限の競合が報告されることがよくあります。 $ find ~ -type f /home/seth/actual.file find: `/home/seth/foggy': 権限が拒否されました 検索: `/home/seth/groggy': 権限が拒否されました find: `/home/seth/soggy': 権限が拒否されました /home/seth/zzz.ファイル このとき、次のようにエラー情報を /dev/null にリダイレクトして、不要な情報を除外することができます。 $ find ~ -type f 2> /dev/null /home/seth/actual.file /home/seth/zzz.ファイル リダイレクトを有効活用する リダイレクトは、Bash でデータを移動する効率的な方法です。リダイレクトを常に使用するとは限りませんが、必要なときにリダイレクトを使用する方法を知っておくと、不要なコピーと貼り付けの操作を大幅に省くことができ、マウスとキーボードの操作にかかる時間を大幅に節約できます。コピー&ペーストにこだわらないでください。リダイレクトを使用すると作業効率が向上します。素晴らしいと思いませんか? Linux リダイレクトの詳細な使用方法については、これで終わりです。Linux リダイレクトの使用に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: MySQLのビューとインデックスの使い方と違いの詳細な説明
>>: jsを使用してシンプルな弾幕スクリーンシステムを実装する
序文Linux 上で jar パッケージを実行する方法は誰もが知っています。なぜ別々に話したいのでし...
目次導入ステップ1ステップ2: アイデアで動的Webプロジェクトを作成するステップ3: Tomcat...
Dockerイメージのインポートとエクスポートこの記事では、移行、バックアップ、アップグレードなどの...
フロートの定義要素を通常のドキュメント フローから外し、要素を左または右に近づけます。親要素の端...
コンポーネントが詳細になるにつれて、複数のコンポーネントが状態を共有する状況に遭遇するでしょう。Vu...
Django Web開発の過程で、HTMLを書く際にバックエンドから同じ名前のリスト変数が渡されるが...
この記事は、@C7210 によって翻訳されたブログ「Usability Counts」からの翻訳です...
CentOS 8をインストールした後、ネットワークを再起動すると次のエラーが表示されますエラーメッセ...
Mixin は、再利用可能な機能を Vue コンポーネント間で分散する非常に柔軟な方法を提供します。...
説明: テキストエリアの値の改行を新しい行に変更しますコードをコピーコードは次のとおりです。 <...
最近、プロジェクトで選択クエリを使用する際に、未使用の主キー ID を除外するために not in ...
目次1. MySQLインストールパッケージをダウンロードする2. MySQLのアンインストール手順3...
序文最近、偶然 MySQL の coalesce を発見しました。ちょうど時間があったので、MySQ...
プロジェクトでは https サービスを使用する必要があるため、Alibaba Cloud では無料...
序文MRR は Multi-Range Read の略で、ランダム ディスク アクセスを削減し、ラン...