Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
ruanhaishen
redis
Commits
3da87b70
Commit
3da87b70
authored
Dec 10, 2014
by
Salvatore Sanfilippo
Browse files
Merge pull request #2133 from chooper/histfile-override
override histfile from env - fixes #831 and copies #833
parents
d8158771
3ab83219
Changes
1
Hide whitespace changes
Inline
Side-by-side
src/redis-cli.c
View file @
3da87b70
...
@@ -60,6 +60,8 @@
...
@@ -60,6 +60,8 @@
#define OUTPUT_CSV 2
#define OUTPUT_CSV 2
#define REDIS_CLI_KEEPALIVE_INTERVAL 15
/* seconds */
#define REDIS_CLI_KEEPALIVE_INTERVAL 15
/* seconds */
#define REDIS_CLI_DEFAULT_PIPE_TIMEOUT 30
/* seconds */
#define REDIS_CLI_DEFAULT_PIPE_TIMEOUT 30
/* seconds */
#define REDIS_CLI_HISTFILE_ENV "REDISCLI_HISTFILE"
#define REDIS_CLI_HISTFILE_DEFAULT ".rediscli_history"
static
redisContext
*
context
;
static
redisContext
*
context
;
static
struct
config
{
static
struct
config
{
...
@@ -138,6 +140,30 @@ static void cliRefreshPrompt(void) {
...
@@ -138,6 +140,30 @@ static void cliRefreshPrompt(void) {
snprintf
(
config
.
prompt
+
len
,
sizeof
(
config
.
prompt
)
-
len
,
"> "
);
snprintf
(
config
.
prompt
+
len
,
sizeof
(
config
.
prompt
)
-
len
,
"> "
);
}
}
static
sds
getHistoryPath
()
{
char
*
path
=
NULL
;
sds
historyPath
=
NULL
;
/* check the env for a histfile override */
path
=
getenv
(
REDIS_CLI_HISTFILE_ENV
);
if
(
path
!=
NULL
&&
*
path
!=
'\0'
)
{
if
(
!
strcmp
(
"/dev/null"
,
path
))
{
return
NULL
;
}
/* if the env is set, return it */
historyPath
=
sdscatprintf
(
sdsempty
(),
"%s"
,
path
);
}
else
{
char
*
home
=
getenv
(
"HOME"
);
if
(
home
!=
NULL
&&
*
home
!=
'\0'
)
{
/* otherwise, return the default */
historyPath
=
sdscatprintf
(
sdsempty
(),
"%s/%s"
,
home
,
REDIS_CLI_HISTFILE_DEFAULT
);
}
}
return
historyPath
;
}
/*------------------------------------------------------------------------------
/*------------------------------------------------------------------------------
* Help functions
* Help functions
*--------------------------------------------------------------------------- */
*--------------------------------------------------------------------------- */
...
@@ -891,10 +917,9 @@ static void repl(void) {
...
@@ -891,10 +917,9 @@ static void repl(void) {
/* Only use history when stdin is a tty. */
/* Only use history when stdin is a tty. */
if
(
isatty
(
fileno
(
stdin
)))
{
if
(
isatty
(
fileno
(
stdin
)))
{
history
=
1
;
historyfile
=
getHistoryPath
();
if
(
historyfile
!=
NULL
)
{
if
(
getenv
(
"HOME"
)
!=
NULL
)
{
history
=
1
;
historyfile
=
sdscatprintf
(
sdsempty
(),
"%s/.rediscli_history"
,
getenv
(
"HOME"
));
linenoiseHistoryLoad
(
historyfile
);
linenoiseHistoryLoad
(
historyfile
);
}
}
}
}
...
...
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