Не удалось открыть файл в ожидаемом скрипте
Мне нужно написать сценарий ожидания, чтобы открыть файл, а затем найти его содержимое, чтобы увидеть, есть ли у него код ошибки 1040. Это код, который я написал:
set f1 [open syslogs.txt r]
while {[gets $f1 line]!= -1} {
if {[regexp {.*1040.*} $line]} {
puts "yes"
}
}
но когда я пытаюсь запустить этот скрипт, он продолжает показывать
couldn't open "syslogs.txt": no such file or directory
while executing
"open syslogs.txt r"
invoked from within
Я также изменил права доступа к файлу. Может кто-нибудь, пожалуйста, помогите мне с этим.. Когда вы делаете это с моей локальной машины, это работает нормально, но когда вы делаете это, вызывая сеанс telnet на сервере, это не работает
2 ответа
Из руководства:
открыть доступ к файлу имени
Откройте файл только для чтения; файл должен уже существовать. Это значение по умолчанию, если доступ не указан.
Доступ r требует, чтобы файл существовал и не мог быть создан самой командой. Вы создаете это? Вы пробовали с или другим значением доступа?
Проверьте текущий каталог (см. pwd
команда) внутри вашего сценария. Если это не то, что вы ожидаете, это может полностью сломать вещи, которые используют относительные пути.