GNU/Linux >> Linux の 問題 >  >> Linux

コマンド ライン (ZSH/BASH) で一連のファイルをコピーする

解決策 1:

あなたはとても親しかった。あなたの質問はほぼ正しい構文でした:

cp P10802{75..83}.JPG ~/Images

解決策 2:

bash で範囲を反復処理するには:

for x in {0..10}; do echo $x; done

あなたの場合に同じことを適用する:

for x in {272..283}; do cp P1080$x.JPG ~/Images; done

解決策 3:

extendedglob オプションを指定した Zsh には、グロビング があります (パターンマッチング) operator.

setopt extendedglob
echo P10802<75-83>.JPG

そのパターンに一致する現在のディレクトリ内のファイル名と一致します (P1080275.JPG は一致しますが、P108020000000075.JPG も一致することに注意してください)

一方、{x...y} 文字列展開演算子 (zsh および最近のバージョンの bash と ksh93 でサポートされています) は、現在のディレクトリにあるファイルに関係なく、x から y までの文字列に展開します。 /P>

cp P10802<75-83>.JPG ~there

一致するファイルをコピーするので、

cp P10802{75..83}.JPG ~there

ただし、たとえば P1080281.JPG が存在しない場合、エラーが発生します。


Linux
  1. Linuxでファイルとディレクトリをコピーする

  2. Bashコマンドラインの終了コードがわかりやすく説明されています

  3. コマンドライン(bash)の「And」の違い??

  1. コマンドライン引数をBashスクリプトに渡しますか?

  2. コマンドはZshで見つかりませんが、Bashで見つかりましたか?

  3. 行番号のない Bash 履歴

  1. LinuxでBASHコマンドライン履歴をクリアする方法

  2. Linuxでファイルをすばやく検索するための5つのコマンドラインツール

  3. 単一行の場合はバッシュ