コピー時に入力ファイルの名前を変更するbashスクリプト

コピー時に入力ファイルの名前を変更するbashスクリプト

bashスクリプトを実行し、ファイルを入力ファイルとして使用しています。

./myscript.sh すべてのファイル名.txt

その後、スクリプトは次のようになります。

#!/bin/bash

input_file=$1
dest_dir="./destination"
mkdir -p "$dest_dir"
cp "$input_file" "$dest_dir"

実行するとファイルがコピーされます。目的地ディレクトリはbash引数に渡されたのと同じ名前を使用します。任意のファイル名.txt

質問:

入力ファイルの名前を常に次のように変更して入力ファイルをターゲットディレクトリにコピーする方法マイファイル.txt

答え1

次のコマンドを使用できます。

#!/bin/bash
input_file=$1
new_file=$2
dest_dir="./destination"
mkdir -p "$dest_dir"
cp "$input_file" "${dest_dir}/${new_file}"

次のようにスクリプトを実行します。

./myscript.sh anyfilename.txt myfile.txt

関連情報