- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - HP-UX
- >
- A simple script
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Forums
Discussions
Discussions
Discussions
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-21-2005 10:36 PM
12-21-2005 10:36 PM
A simple script
I have written a simple script but don´t work. This is the script:
$ cat f_get_count.sh
funct_get_count(){
tcount='$ORACLE_HOME/bin/sqlplus -s << EOF
connect / as sysdba
set heading off
set feedback off
select count(*) from dba_users;
exit
EOF'
if [ $tcount!=0 ]; then
echo "Number of rows: $tcount"
fi
}
################################
funct_get_count
################################
$ f_get_count.sh
f_get_count.sh[9]: -s: A test command parameter is not valid.
Thanks,
Cesar (Brazil)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-21-2005 10:41 PM
12-21-2005 10:41 PM
Re: A simple script
You need spaces in your test clause. Change it to: -
if [ $tcount != 0 ]; then
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-21-2005 10:45 PM
12-21-2005 10:45 PM
Re: A simple script
unct_get_count(){
tcount='$ORACLE_HOME/bin/sqlplus -s << EOF
connect / as sysdba
set heading off
set feedback off
select count(*) from dba_users;
exit
EOF'
if [ $tcount != 0 ]; then
echo "Number of rows: $tcount"
fi
}
################################
funct_get_count
################################
You need to have spaces when doing comparison.
-Arun
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-21-2005 10:53 PM
12-21-2005 10:53 PM
Re: A simple script
tcount='$ORACLE_HOME/bin/sqlplus -s << EOF
connect / as sysdba
set heading off
set feedback off
select count(*) from dba_users;
exit
EOF'
It will declare a variable tcount with that contents.
You have to try as,
tcount=$($ORACLE_HOME/bin/sqlplus -s << EOF
connect / as sysdba
set heading off
set feedback off
select count(*) from dba_users;
exit
EOF)
Change script as,
tcount=$($ORACLE_HOME/bin/sqlplus -s << EOF
connect / as sysdba
set heading off
set feedback off
select count(*) from dba_users;
exit
EOF)
if [ $tcount -ne 0 ]; then
echo "Number of rows: $tcount"
fi
}
################################
funct_get_count
################################
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-21-2005 10:58 PM
12-21-2005 10:58 PM
Re: A simple script
tcount=$((
$ORACLE_HOME/bin/sqlplus -s << EOF
connect / as sysdba
set heading off
set feedback off
select count(*) from dba_users;
exit
EOF
))
if [ $tcount -ne 0 ]; then
echo "Number of rows: $tcount"
fi
}
# START
funct_get_count
-Muthu
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-22-2005 12:45 AM
12-22-2005 12:45 AM
Re: A simple script
$ cat f_get_count.sh
funct_get_count(){
tcount=$((/u01/app/oracle/product/9.2.0.1.0/bin/sqlplus -s << EOF
connect / as sysdba
set heading off
set feedback off
select count(*) from dba_users;
exit
EOF
))
if [ $tcount -ne 0 ]; then
echo "Number of rows: $tcount"
fi
}
################################
funct_get_count
################################
$ f_get_count.sh
f_get_count.sh[8]: /u01/app/oracle/product/9.2.0.1.0/bin/sqlplus -s << EOF^Jconn
ect / as sysdba^Jset heading off^Jset feedback off^Jselect count(*) from dba_use
rs;^Jexit^JEOF^J: Syntax error
ps: Sorry for my English.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-22-2005 02:12 AM
12-22-2005 02:12 AM
Re: A simple script
You do not want to use the syntax
$(( command ))
in your script - this will only evaluate a real numeric expression, it won't execute the command.
You should use either
`command`
OR
$(command)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
12-22-2005 04:52 AM
12-22-2005 04:52 AM
Re: A simple script
funct_get_count(){
tcount=$(/u01/app/oracle/product/9.2.0.1.0/bin/sqlplus -s << EOF
connect / as sysdba
set heading off
set feedback off
select count(*) from dba_users;
exit
EOF
)
if [ $tcount -ne 0 ]; then
echo "Number of rows: $tcount"
fi
}
################################
funct_get_count
################################
$ f_get_count.sh
Number of rows:
46
Thank you all!!
Augusto