バッチファイルを処理するLinuxの1行コマンドの詳細な説明

バッチファイルを処理するLinuxの1行コマンドの詳細な説明

序文

最良の方法は、あなたが思いつく最も速い方法ではないかもしれません。職場で一時的に使用するスクリプトは堅牢である必要はなく、速く記述するほど良いです。参考までに、sed コマンドを使用してバッチ ファイルを処理するコマンドを作成する手法を示します。

需要事例1

現在のディレクトリにある 0_80_91.txt、0_80_92.txt、0_80_93.txt などをすべてコピーします。 。 。数十のファイルのファイル名が0_81_91.txt、0_81_92.txt、0_81_93.txtなどに変更されました。つまり、ファイル名の 80 を 81 に変更します。

実装コマンドは次のとおりです: ls *.txt |sed -nr 's/(0_)(80)(.*)/mv \1\2\3 \181\3/gp' | sh

#ls *.txt 
0_80_91.txt 0_80_92.txt 0_80_93.txt
#ls *.txt |sed -nr 's/(0_)(80)(.*)/mv \1\2\3 \181\3/gp'
0_80_91.txt 0_81_91.txt をコピー
0_80_92.txt 0_81_92.txt をコピー
0_80_93.txt 0_81_93.txt をコピー
#ls *.txt |sed -nr 's/(0_)(80)(.*)/mv \1\2\3 \181\3/gp' | sh
#ls *.txt
0_81_91.txt 0_81_92.txt 0_81_93.txt

需要事例2

cc_uncompress コマンドを使用して、現在のディレクトリ内のすべての 0_80_91.Z、0_80_92.Z、および 0_80_93.Z ファイルを解凍し、指定されたファイルに出力します。呼び出し形式はcc_uncompress -s 0_80_91.txt -d 1.txtです。 1.txt は任意のファイル名にすることができます。

実装コマンド 1 は次のとおりです: ls *.Z | sed -nr 's/(.*)/cc_uncompress -s \1 -d \1.txt/gp'

#ls *.Z | sed -nr 's/(.*)/cc_uncompress -s \1 -d \1.txt/gp'
cc_uncompress -s 0_80_91.Z -d 0_80_91.Z.txt
cc_uncompress -s 0_80_92.Z -d 0_80_92.Z.txt
cc_uncompress -s 0_80_93.Z -d 0_80_93.Z.txt
#ls *.Z | sed -nr 's/(.*)/cc_uncompress -s \1 -d \1.txt/gp' | sh

コマンド 2 の実装は次のとおりです: find . -name "*.Z" -exec cc_uncompress -s {} -d {}.bak \;

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Linux でファイルを削除するときに「操作は許可されていません」というプロンプトが表示される場合の対処方法
  • Linux はファイル名の後にスペースがあるファイルを見つけて処理します (2 つの方法)
  • Linuxファイル処理共通コマンド操作スキル
  • Linux でさまざまな圧縮ファイルを処理する方法
  • Windows で winscp とバッチ処理を使用して、SSH ポート経由で Linux サーバーにファイルをアップロードする
  • CD コマンドを使わずに Linux でディレクトリ/フォルダに入る方法
  • Linux で unzip コマンドを使用して複数のファイルを解凍する方法

<<:  Ubuntu16.04 インストール mysql5.7.22 グラフィックチュートリアル

>>:  MySQL 5.6.23 のインストールと設定環境変数のチュートリアル

推薦する

MySQL 5.7.18 のインストールと設定方法のグラフィックチュートリアル (CentOS7)

LinuxにMySQL 5.7.18をインストールする方法1. MySQLをダウンロードします。公...

Vue のフィルターの適用シナリオの詳細な説明

filterは通常、特定の値をフィルターするために使用されます。たとえば、フィールドが空だが、フロン...

MySQLはテーブル内のフィールドを別のテーブル内のフィールドの値と等しくなるように更新します

以下のように表示されます。 table1 を z として更新し、table2 を zb として結合し...

VUE uni-app でよく使用される API についての簡単な説明

目次1. ルーティングとページジャンプ2. インターフェース要約する1. ルーティングとページジャン...

ubuntu18.04 での qt5.12.8 のインストールと環境設定に関する詳細なチュートリアル

環境システム: Ubuntu 18.04ソフトウェア: qt5.12.8 1. インストールパッケー...

Javascript 共通高階関数の詳細

目次1. 一般的な高階関数1.1、フィルター1.2、地図1.3、減らすHigher Order fu...

MySQL 5.7.17 winx64 のインストールと設定のグラフィックチュートリアル

MySQL のインストールに関する以前のメモを要約して、皆さんと共有しました。ステップ 1: mys...

CentOS8 jdk8 / java8 のインストールチュートリアル(推奨)

序文最初はCentOS8でwgetを使ってダウンロードし、解凍して環境変数を設定するつもりだったので...

img usemap 属性 中国地図リンク

HTML img タグ: Web ページに導入される画像を定義します。興味深い usemap 属性も...

ie8/ie9/ie10/ie11 chrome firefox を区別するための CSS コード

ウェブサイトの互換性のデバッグは本当に面倒です。今日のウェブサイト デザイナーは、以前よりもはるかに...

docker pruneコマンドは、あまり使用されないデータを定期的にクリーンアップするために使用できます。

目次docker システム df docker システム プルーンNoneオブジェクトをクリーンアッ...

Vue3 (V) HTTPライブラリaxiosの統合の詳細

目次1. axiosをインストールする2. アクシオスの使用1.ホームページでaxiosを参照する2...

CSS3 で @media を使用して Web ページの適応を実現するためのサンプル コード

現在、コンピュータモニターの画面解像度はますます高くなる傾向にありますが、携帯電話などのモバイルデバ...

純粋な CSS ドロップダウン メニュー

成果を達成する実装コードhtml <div id="コンテナ"> &...

Ubuntu 20.04 に MySql5.7 をインストールして構成するための詳細なチュートリアル

目次1. Ubuntuソースの変更2. MySQLをインストールする3. 新しいユーザーを作成し、権...