我有一个文件包含带有文件路径的行。有时路径包含 SHELL 环境变量,我想检查文件是否存在。以下是我的解决方案:
set fh [open "the_file_contain_path" "r"]
while {![eof $fh]} {
set line [gets $fh]
if {[regexp -- {\$\S+} $line]} {
catch {exec /usr/local/bin/tcsh -c "echo $line" } line
if {![file exists $line]} {
puts "ERROR: the file $line is not exists"
}
}
}
我确定有更优雅的解决方案而不使用
/usr/local/bin/ tcsh -c