Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
ruanhaishen
redis
Commits
7e91f971
Commit
7e91f971
authored
Aug 01, 2010
by
Pieter Noordhuis
Browse files
Add support for domain sockets to redis-cli
parent
c61e6925
Changes
1
Hide whitespace changes
Inline
Side-by-side
src/redis-cli.c
View file @
7e91f971
...
@@ -52,6 +52,7 @@
...
@@ -52,6 +52,7 @@
static
struct
config
{
static
struct
config
{
char
*
hostip
;
char
*
hostip
;
int
hostport
;
int
hostport
;
char
*
hostsocket
;
long
repeat
;
long
repeat
;
int
dbnum
;
int
dbnum
;
int
argn_from_stdin
;
int
argn_from_stdin
;
...
@@ -72,9 +73,21 @@ static int cliConnect(void) {
...
@@ -72,9 +73,21 @@ static int cliConnect(void) {
static
int
fd
=
ANET_ERR
;
static
int
fd
=
ANET_ERR
;
if
(
fd
==
ANET_ERR
)
{
if
(
fd
==
ANET_ERR
)
{
fd
=
anetTcpConnect
(
err
,
config
.
hostip
,
config
.
hostport
);
if
(
config
.
hostsocket
==
NULL
)
{
fd
=
anetTcpConnect
(
err
,
config
.
hostip
,
config
.
hostport
);
}
else
{
fd
=
anetUnixConnect
(
err
,
config
.
hostsocket
);
if
(
fd
==
ANET_ERR
)
{
fprintf
(
stderr
,
"Could not connect to Redis at %s: %s"
,
config
.
hostsocket
,
err
);
return
-
1
;
}
}
if
(
fd
==
ANET_ERR
)
{
if
(
fd
==
ANET_ERR
)
{
fprintf
(
stderr
,
"Could not connect to Redis at %s:%d: %s"
,
config
.
hostip
,
config
.
hostport
,
err
);
fprintf
(
stderr
,
"Could not connect to Redis at "
);
if
(
config
.
hostsocket
==
NULL
)
fprintf
(
stderr
,
"%s:%d: %s"
,
config
.
hostip
,
config
.
hostport
,
err
);
else
fprintf
(
stderr
,
"%s: %s"
,
config
.
hostsocket
,
err
);
return
-
1
;
return
-
1
;
}
}
anetTcpNoDelay
(
NULL
,
fd
);
anetTcpNoDelay
(
NULL
,
fd
);
...
@@ -304,6 +317,9 @@ static int parseOptions(int argc, char **argv) {
...
@@ -304,6 +317,9 @@ static int parseOptions(int argc, char **argv) {
}
else
if
(
!
strcmp
(
argv
[
i
],
"-p"
)
&&
!
lastarg
)
{
}
else
if
(
!
strcmp
(
argv
[
i
],
"-p"
)
&&
!
lastarg
)
{
config
.
hostport
=
atoi
(
argv
[
i
+
1
]);
config
.
hostport
=
atoi
(
argv
[
i
+
1
]);
i
++
;
i
++
;
}
else
if
(
!
strcmp
(
argv
[
i
],
"-s"
)
&&
!
lastarg
)
{
config
.
hostsocket
=
argv
[
i
+
1
];
i
++
;
}
else
if
(
!
strcmp
(
argv
[
i
],
"-r"
)
&&
!
lastarg
)
{
}
else
if
(
!
strcmp
(
argv
[
i
],
"-r"
)
&&
!
lastarg
)
{
config
.
repeat
=
strtoll
(
argv
[
i
+
1
],
NULL
,
10
);
config
.
repeat
=
strtoll
(
argv
[
i
+
1
],
NULL
,
10
);
i
++
;
i
++
;
...
@@ -345,8 +361,8 @@ static sds readArgFromStdin(void) {
...
@@ -345,8 +361,8 @@ static sds readArgFromStdin(void) {
}
}
static
void
usage
()
{
static
void
usage
()
{
fprintf
(
stderr
,
"usage: redis-cli [-iv] [-h host] [-p port] [-a authpw] [-r repeat_times] [-n db_num] cmd arg1 arg2 arg3 ... argN
\n
"
);
fprintf
(
stderr
,
"usage: redis-cli [-iv] [-h host] [-p port]
[-s /path/to/socket]
[-a authpw] [-r repeat_times] [-n db_num] cmd arg1 arg2 arg3 ... argN
\n
"
);
fprintf
(
stderr
,
"usage: echo
\"
argN
\"
| redis-cli -c [-h host] [-p port] [-a authpw] [-r repeat_times] [-n db_num] cmd arg1 arg2 ... arg(N-1)
\n
"
);
fprintf
(
stderr
,
"usage: echo
\"
argN
\"
| redis-cli -c [-h host] [-p port]
[-s /path/to/socket]
[-a authpw] [-r repeat_times] [-n db_num] cmd arg1 arg2 ... arg(N-1)
\n
"
);
fprintf
(
stderr
,
"
\n
If a pipe from standard input is detected this data is used as last argument.
\n\n
"
);
fprintf
(
stderr
,
"
\n
If a pipe from standard input is detected this data is used as last argument.
\n\n
"
);
fprintf
(
stderr
,
"example: cat /etc/passwd | redis-cli set my_passwd
\n
"
);
fprintf
(
stderr
,
"example: cat /etc/passwd | redis-cli set my_passwd
\n
"
);
fprintf
(
stderr
,
"example: redis-cli get my_passwd
\n
"
);
fprintf
(
stderr
,
"example: redis-cli get my_passwd
\n
"
);
...
@@ -465,6 +481,7 @@ int main(int argc, char **argv) {
...
@@ -465,6 +481,7 @@ int main(int argc, char **argv) {
config
.
hostip
=
"127.0.0.1"
;
config
.
hostip
=
"127.0.0.1"
;
config
.
hostport
=
6379
;
config
.
hostport
=
6379
;
config
.
hostsocket
=
NULL
;
config
.
repeat
=
1
;
config
.
repeat
=
1
;
config
.
dbnum
=
0
;
config
.
dbnum
=
0
;
config
.
argn_from_stdin
=
0
;
config
.
argn_from_stdin
=
0
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment