2016-10-04 9 views
0

Как читать файл свойств с помощью скрипта csh?Прочитать файл свойств с помощью скрипта csh

Когда я googled, все, что я вижу, для сценария bash.

В настоящее время, что я использую

#!/bin/csh 

set config_file=$1 

echo "Configuration at : $config_file" 

set server=`grep -i 'server' $config_file | cut -f2 -d'='` 
set port=`grep -i 'port' $config_file | cut -f2 -d'='` 

if ("$port" == "") then 
     set port=9000 
endif 

И мой свойства файла

server=192.168.1.20 
port=8081 

Это работает отлично. Но если какое-либо свойство прокомментировано, оно все равно считывает значение.

server=192.168.1.20 
#port=8081 

Конечное значение для порта. Я получаю как 8081 вместо 9000 во втором корпусе.

ответ

1

с awk, как показано ниже;

awk '$0 !~ /^#/' означает, что порт установлен, если строка не начинается с #

#!/bin/csh 
set config_file=$1 
echo "Configuration at : $config_file" 
set server=`grep -i 'server' $config_file | cut -f2 -d'='` 
set port = `grep -i 'port' $config_file | awk '$0 !~ /^#/' | cut -f2 -d'='` 
if ("$port" == "") then 
     set port=9000 
endif