このディレクトリの索引
#  
#  C:\Users\workspace\pythonというディレクトリの中のpythonファイルを実行すると、
#  pythonがあるディレクトリと同ディレクトリの全てのテキスト形式ファイル内にある
#  path1、path2に格納されている文字列のディレクトリを
#  C:\Users\workspace\pythonに置き換えたいです。 
#  

現ディレクトリ('C:\\Users\\workspace\\python\\').

'ディレクトリ内の全テキストファイル中のpath1, path2 のディレクトリを現ディレクトリに置換する' :-
        ディレクトリ内の全テキストファイル(_テキストファイル名ならび),
        'ファイル中のpath1, path2 のディレクトリを現ディレクトリに置換する'(_テキストファイル名ならび).

ディレクトリ内の全テキストファイル(_テキストファイル名ならび) :-
        shs('ls -N *.txt',_テキストファイル名ならび).

'ファイル内のpath1, path2 のディレクトリを現ディレクトリに置換する'(_テキストファイル名ならび) :-
        append(_,[_テキストファイル名|R],_テキストファイル名ならび),
        'path1, path2 のディレクトリを現ディレクトリに置換する'(_テキストファイル名),
        R = [].

'path1, path2 のディレクトリを現ディレクトリに置換する'(_テキストファイル名) :-
        get_lines(_テキストファイル名,Lines),
        'path1, path2 のディレクトリを現ディレクトリに置換する'(Lines,Lines2),
        put_lines(_テキストファイル名,Lines2).

'path1, path2 のディレクトリを現ディレクトリに置換する'([],[]) :- !.
'path1, path2 のディレクトリを現ディレクトリに置換する'([Line1|R1],[Line2|R2]) :-
        'path1かpath2が存在する'(Line1,_path,_パス,R),
        パスを現ディレクトリに変換(_path,_パス,R,,Line2),
        'path1, path2 のディレクトリを現ディレクトリに置換する'(R1,R2),!.
'path1, path2 のディレクトリを現ディレクトリに置換する'([Line|R1],[Line|R2]) :-
        'path1, path2 のディレクトリを現ディレクトリに置換する'(R1,R2).

'path1かpath2が存在する'(Line1,_path,_パス,R) :-
        split(Line1,[' '],[_path,=,_パス|R]),
        member(_path,[path1,path2]),!.

パスを現ディレクトリに変換(_path,_パス,R,Line2) :-
        現ディレクトリ(DIR),
        split(_パス,['\\'],L),
        append(_,[_ファイル名],L),
        concat_atom([DIR,_ファイル名],_更新されたパス),
        concat_atom([_path,=,_更新されたパス,R],' ',Line2).