2009-10-22から1日間の記事一覧

正規表現を使ってファイル名を変更する(sed)

#!/bin/sh #rename_sed.sh if [ $# -lt 3 ]; then echo "Usage: rename_sed.sh regexp replace files..." exit 1 fi #正規表現と置き換え文字列をセット regexp="$1" pattern="$2" shift 2 #残りの引数で指定されたファイルについて繰り返し処理 for orig do…

相対パスから絶対パスを得る

相対パスを絶対パスに変換する一般的な方法は用意されていない 相対パスの前にカレントディレクトリを付け足し.や..を処理することで 絶対パスに変換しています。 #!/bin/sh #relpath2abs.sh if [ -z "$1" ]; then echo "Usage: reopath2abs.sh path" exit 1…

ファイル名の拡張子を変更する

古い拡張子を取り除いた後、新しい拡張子を付ける #!/bin/sh #chgext.sh if [ $# -lt 2 ]; then echo "Usage: chgext.sh .newext files..." exit 1 fi newext="$1" shift #新しい拡張子が.で始まっていない場合付け加える expr "$newext" : '\.' >/dev/null …