Quantcast
Channel: Bashタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 2804

[bash]ディレクトリのファイル内の文字列を置換してコピーする

$
0
0

環境

  • Mac Catalina
  • bash

やろうとしてること

/sample/ディレクトリ内にあるテキストファイルの中身をcatからdogに書き換えてファイルを新規作成する。

/sample
# copy.sh 実行前
sample
|- copy.sh
|- aaa.txt
|- bbb.txt

# copy.sh 実行後
|- copy.sh
|- aaa.txt
|- aaa_new.txt
|- bbb.txt
|- bbb_bew.txt

script

copy.sh
#!/bin/bashDIR=/sample/

# sample.shのディレクトリに移動するcd$(dirname${0})# txtファイルの名前を取得してループfor pathfile in$DIR/*.txt;do# 拡張子を取り除いた名称を取得(Ex. aaa.txt -> aaa)NAME=$(basename$pathfile | sed-e's/\.txt$//g')# catからdogに置換して、ファイル末尾に_newを付けてを新規保存するsed-e"s/cat/dog/g" pathfile >"${NAME}_new.txt"done

Viewing all articles
Browse latest Browse all 2804

Trending Articles