Use double quotes to handle file names with spaces

Remove dependency on cut.
This commit is contained in:
Arun Prakash Jana 2017-04-03 23:33:31 +05:30
parent 4b66029762
commit 30c8828e42
No known key found for this signature in database
GPG Key ID: A75979F35C080412
1 changed files with 19 additions and 5 deletions

24
nnn.c
View File

@ -779,7 +779,7 @@ show_stats(char* fpath, char* fname, struct stat *sb)
if (S_ISREG(sb->st_mode)) {
/* Show file(1) output */
sprintf(buf, "file -b %s 2>&1", fpath);
sprintf(buf, "file -b \"%s\" 2>&1", fpath);
p = get_output(buf, PATH_MAX + 48);
if (p) {
printw("\n\n ");
@ -796,16 +796,30 @@ show_stats(char* fpath, char* fname, struct stat *sb)
}
/* Show md5 */
sprintf(buf, "openssl md5 %s 2>&1 | cut -d' ' -f2", fpath);
sprintf(buf, "openssl md5 \"%s\" 2>&1", fpath);
p = get_output(buf, PATH_MAX + 48);
if (p)
if (p) {
p = xmemrchr(buf, ' ', strlen(buf));
if (!p)
p = buf;
else
p++;
printw("\n md5: %s", p);
}
/* Show sha256 */
sprintf(buf, "openssl sha256 %s 2>&1| cut -d' ' -f2", fpath);
sprintf(buf, "openssl sha256 \"%s\" 2>&1", fpath);
p = get_output(buf, PATH_MAX + 48);
if (p)
if (p) {
p = xmemrchr(buf, ' ', strlen(buf));
if (!p)
p = buf;
else
p++;
printw(" sha256: %s", p);
}
}
/* Show exit keys */