「cv」ユーティリティを使用してコマンドの進行状況を確認する
Linux ユーザーは、cp コマンドによるファイルのコピー、tar ユーティリティによる .tar アーカイブの抽出、ファイルの移動など、システム上での作業中にさまざまなコマンドを扱うことになります。 mv コマンドを使用したり、dd ユーティリティを使用してファイルを変換したり、ファイルをコピーしたりすることもできます。ジョブを完了する必要があり、ユーティリティの使用時にどのように実行されるかを知りたい場合、コマンドの進行状況は非常に重要です。
私のムービーはダウンロードからデスクトップにコピーされますか?はい、cp コマンドを使用してファイルをコピーできることはわかっていますが、このコマンドにはファイルのコピー処理の進行状況をユーザーが確認できる進行状況バーが表示されません。
実装するのに非常に優れた簡単なソリューションは、Coreutils Viewer として知られるcv ツールです。 C プログラミング言語でコーディングされているため、非常に高速です。 github の公式ドキュメントによると、この Linux コマンドは、mv、cp、dd、tar、unzip など、システムで現在実行されている基本的な組み込みコマンドを検索し、コピーされたデータの割合を表示します。
Linux 固有ですが、Mac ポートも利用できます。
Linux システムに cv をインストールする方法
cv ユーティリティを Linux システムにインストールするのは非常に簡単です。注意しなければならない唯一の依存関係は、多くの Linux システムにデフォルトでインストールされるライブラリ「ncurses」です。
Ubuntu ユーザーは、次のコマンドを使用して ncurses をインストールできます。
sudo apt-get install ncurses-dev
オペレーティング システムとして Fedora を使用している場合は、ライブラリ ncurses をシステムに適切にインストールするために次のコマンドを実行する必要があります。
sudo yum install ncurses-devel
CentOS ユーザーは、次のコマンドを使用して yum 経由で ncurses をインストールできます。
sudo yum install ncurses-devel
パッケージの依存関係の処理が完了したら、次のコマンドを使用して github からソース コードをダウンロードします。
wget https://github.com/Xfennec/cv/archive/master.zip
次に、以下に示すように解凍ユーティリティを使用してファイルを解凍します。
unzip master.zip
cd コマンドを使用してディレクトリを変更します。
cd cv-master
以下に示す 2 つのコマンドを使用して、cv ユーティリティをコンパイルし、インストールします。
sudo make
sudo make install
cvユーティリティの使用方法
cv ユーティリティのインストールが完了したら、次のコマンドを使用して起動できます。
cv
私のシステムで上記のコマンドを実行すると、次の出力が表示されます。
[ 2796] cat inactive/flushing/streaming/...
[ 2847] cat /home/oltjano/.xsession-errors 100.0% (1.8 MiB / 1.8 MiB)
[ 2848] cat /home/oltjano/.xsession-errors 100.0% (1.8 MiB / 1.8 MiB)
ここで、MOVIE ディレクトリからデスクトップにムービーをコピーし、cv ユーティリティを実行すると何が起こるかを見てみましょう。
cp -r "Troy/" /home/oltjano/Desktop
cv コマンドを実行すると、コピーの進行状況に関する情報が得られます。
[ 7545] cp /home/oltjano/Desktop/MOVIES/Troy/Troy.mp4 6.1% (176.7 MiB / 2.8 GiB)
[ 2847] cat /home/oltjano/.xsession-errors 100.0% (1.8 MiB / 1.8 MiB)
[ 2848] cat /home/oltjano/.xsession-errors 100.0% (1.8 MiB / 1.8 MiB)
再び履歴書を実行します。
[ 7545] cp /home/oltjano/Desktop/MOVIES/Troy/Troy.mp4 17.8% (516.5 MiB / 2.8 GiB)
[ 2847] cat /home/oltjano/.xsession-errors 100.0% (1.8 MiB / 1.8 MiB)
[ 2848] cat /home/oltjano/.xsession-errors 100.0% (1.8 MiB / 1.8 MiB)
上記の出力からわかるように、cv ユーティリティは、コピー中のファイルの割合と、コピー中のファイル全体のサイズを示すコピー プロセスに関する情報を提供します。これは、大きなファイルをコピーする場合に非常に便利です。たとえば、ムービーをコピーするときに、ムービーを目的の場所に移動するのにどれくらいの「時間」がかかるかを確認したい場合などです。
cv Linux ユーティリティの使用中に使用できる便利なオプションが多数あります。そのうちの 1 つは、操作の残り時間に関する情報をユーザーに提供するオプション -w です。たとえば、このオプションは、上記のムービーで行ったように、大きなファイルをコピーするときに非常に便利です。
デスクトップにムービーをコピーしながら、次のコマンドを実行してみましょう。
cv -w
次の出力がコンソールに表示されます。
[ 2796] cat inactive/flushing/streaming/...
[ 7642] cp /home/oltjano/Desktop/MOVIES/Troy/Troy.mp4 6.7% (195.5 MiB / 2.8 GiB) 1.2 MiB/s eta 0:36:07
[ 2847] cat /home/oltjano/.xsession-errors 100.0% (1.8 MiB / 1.8 MiB) 0/s
[ 2848] cat /home/oltjano/.xsession-errors 100.0% (1.8 MiB / 1.8 MiB) 0/s
もう一度実行します。
[ 2796] cat inactive/flushing/streaming/...
[ 7642] cp /home/oltjano/Desktop/MOVIES/Troy/Troy.mp4 28.8% (835.1 MiB / 2.8 GiB) 14.5 MiB/s eta 0:02:22
[ 2847] cat /home/oltjano/.xsession-errors 100.0% (1.8 MiB / 1.8 MiB) 0/s
[ 2848] cat /home/oltjano/.xsession-errors 100.0% (1.8 MiB / 1.8 MiB) 0/s
私のシステムで cv -w コマンドを再度実行すると、ファイルがコピーされるまであと 31 秒あることがわかります。
[ 2796] cat inactive/flushing/streaming/...
[ 7642] cp /home/oltjano/Desktop/MOVIES/Troy/Troy.mp4 54.2% (1.5 GiB / 2.8 GiB) 42.2 MiB/s eta 0:00:31
[ 2847] cat /home/oltjano/.xsession-errors 100.0% (1.8 MiB / 1.8 MiB) 0/s
[ 2848] cat /home/oltjano/.xsession-errors 100.0% (1.8 MiB / 1.8 MiB) 0/s
メッセージを表示せずに静かに実行したい場合は、-q オプションを使用します。ただし、すべての警告/エラー メッセージを表示したい場合は、-d オプションを使用します。
たとえば、 cv ユーティリティの適切な使用法は次のようになります。
cv -wd
次の例に示すように、-m オプションを使用して、監視対象プロセスの実行中にループすることもできます。
cv -m
以下は、上記のコマンドを実行した後に私のシステムで撮影されたスクリーンショットです。
コア ユーティリティの進行状況を決して停止せずに監視したい場合は、次のコマンドを実行します。
cv -M
上記のコマンドと同等のコマンドを以下に示します。
watch cv
私が気に入っている非常に便利なオプションの組み合わせを以下に示します。
cv -wM
上記のコマンドを実行すると、実際の進行状況バーが表示されます。
上記の組み合わせに相当するものは次のとおりです。
watch cv -w
コマンドラインでの作業中に cv linux ユーティリティが非常に役立つ方法は他にもたくさんあります。ダウンロードの進行状況を確認したい場合は、次のコマンドを使用します。
watch cv -wc firefox
次のコマンドを使用して、ウェブサーバーのアクティビティを確認することもできます。
cv -c httpd
助けを得ます
新しいユーティリティを学習して使用するときにサポートを受けることは非常に重要です。 cv ユーティリティの使用方法を学習する際にヘルプを表示するには、次のコマンドを実行します。
cv -h
コンソールに次の出力が表示されます。
cv - Coreutils Viewer
---------------------
Shows running coreutils basic commands and displays stats.
Supported commands: cp mv dd tar gzip gunzip cat grep fgrep egrep cut sort xz md5sum sha1sum sha224sum sha256sum sha384sum sha512sum adb
Usage: cv [-qdwmM] [-W secs] [-c command] [-p pid]
-q --quiet hides all messages
-d --debug shows all warning/error messages
-w --wait estimate I/O throughput and ETA (slower display)
-W --wait-delay secs wait 'secs' seconds for I/O estimation (implies -w, default=1.0)
-m --monitor loop while monitored processes are still running
-M --monitor-continous like monitor but never stop (similar to watch cv)
-c --command cmd monitor only this command name (ex: firefox)
-p --pid id monitor only this process ID (ex: `pidof firefox`)
-v --version show program version and exit
-h --help display this help and exit
さらに詳細な情報と例を取得するには、以下に示すような man コマンドを使用します。
man cv
結論
Linux のパワー ユーザーになるには、多大な情熱とコマンド ラインでの作業が必要です。基本的に、ファイルのコピーから tar アーカイブの解凍と抽出に至るまで、私たちが行うことはすべてターミナル上で行われます。この詳細なチュートリアルでは、システムで実行されている基本的なコマンドの進行状況に関する情報が必要な場合に優れたツールとして使用できる cv ユーティリティについて説明しました。
大きなファイルを扱うときは、コピーされたデータの割合を常に知りたいと思っています。正直に言うと、私は特に Ubuntu ラップトップで映画を見るときに大きなファイルを頻繁に扱います。
cp の使用中にコピーされたデータの割合を表示するには、cv ユーティリティを使用します。とても簡単です!この素晴らしい便利なツールをあなたのシステムにインストールして試してみてはいかがでしょうか?
試してみて決して後悔しないと思います!