シェルスクリプト

大量のファイルをリネームする

cygwinで大量のファイルをリネームしたいなーと思い、 UNIXコマンドを調べていると、大量にリネームするコマンドは無いらしい。 (Linuxなら、renameコマンドがある。) しかし、下記のようにすれば可能 $ for i in * > do > name=`echo $i | cut -c5-10` # フ…

cygwinでWindowsプログラムを実行する方法

cygwinでWindowsプログラムを実行するのにやたらと苦労した。 以下が実行するスクリプト passwd="hogehoge" lhaplus="/cygdrive/c/Program Files/Lhaplus/Lhaplus.exe" cygstart "$lhaplus" /c:zip /p:$passwd /o:./ ./"hoge.txt" #←$lhaplusを""で囲むのを…

zipコマンドとunzipコマンド

zipでパスワードをかける場合、 zip -e hoge.zip hoge.txt #プロンプトでパスワード聞かれる zip -P hoge hoge.zip hoge.txt #hogeというパスワードで圧縮する となる。 unzipでパスワード解凍する場合 unzip hoge.zip #プロンプトでパス聞かれる unzip -P h…

シェルスクリプト

以下のようなシェルスクリプトがあったとする #! /bin/bash IsNull () { # 引数の個数チェック if [ $# -ne 3 ] ; then echo 引数足りん exit 2 fi # 引数が空ならエラー if [ -z $1 ] ; then echo $2 exit $3 fi } IsNull $1 引数がありません 1 # ※1 上記…

日報を自動作成する以下略

結局以下のように落ち着いた。Mac版 #! /bin/sh fpath=${1:-~/日報/} #日報のファイルパス cd $fpath format_date=${2:-"%Y_%m_%d"} #日付フォーマット today=`date +"${format_date}"`".txt" #今日の日付 例:2011_02_28 previous_day=`ls -t *.txt | head -…

日報を自動作成するシェルスクリプトを作ってみた

毎日日報を作っているが、日報は基本的に前日のをコピーしてから編集するだけなので、コピーする動作のみをシェルスクリプトで自動化した。 以下ソース # 日報自動作成.sh fpath='~/日報/' #日報のファイルパス today=`date +"%Y_%m_%d"` #今日の日付 例:201…

WindowsのSTARTコマンドをLinuxのシェルスクリプトで実現するには

実現するも何も以下のように実行すれば良い bash$ command1 ; command2 ; これはWindowsの START "" /WAIT command1 START "" command2 と変わりない。 こう考えるとLinuxの方がシェルを操作しやすい。最後に例: bash$ read tmp ; echo $tmp ;